C API 参考¶
宏定义¶
-
ob_enable_multi_device_sync¶
-
OB_EXTENSION_API¶
-
OB_EXTENSION_INTERNAL_API¶
-
DEPRECATED¶
-
OB_LOG_SEVERITY_NONE¶
-
OB_FORMAT_RGB888¶
-
OB_FORMAT_MJPEG¶
-
FORMAT_MJPEG_TO_I420¶
-
FORMAT_MJPEG_TO_NV21¶
-
FORMAT_MJPEG_TO_RGB888¶
-
FORMAT_MJPEG_TO_BGR888¶
-
FORMAT_MJPEG_TO_BGRA¶
-
OBDeviceIpAddrConfig¶
-
ob_device_ip_addr_config¶
-
ob_filter_callback¶
-
ob_playback_callback¶
-
is_ir_sensor(sensor_type)¶
Check if sensor_type is an IR sensor.
- Parameters
sensor_type – Sensor type to check
- Returns
True if sensor_type is an IR sensor, false otherwise
-
isIRSensor¶
-
is_ir_stream(stream_type)¶
Check if stream_type is an IR stream.
- Parameters
stream_type – Stream type to check
- Returns
True if stream_type is an IR stream, false otherwise
-
isIRStream¶
-
is_ir_frame(frame_type)¶
Check if frame_type is an IR frame.
- Parameters
frame_type – Frame type to check
- Returns
True if frame_type is an IR frame, false otherwise
-
isIRFrame¶
-
OB_DEFAULT_DECRYPT_KEY¶
The default Decrypt Key.
-
_OB_PROPERTY_H_¶
-
OB_PROP_TIMER_RESET_TRIGGLE_OUT_ENABLE_BOOL¶
结构体¶
-
struct ob_device_timestamp_reset_config¶
The timestamp reset configuration of the device.
-
struct ob_error¶
The error class exposed by the SDK, users can get detailed error information according to the error.
-
struct ob_margin_filter_config¶
Configuration for depth margin filter.
-
struct ob_multi_device_sync_config¶
The synchronization configuration of the device.
-
struct OBAccelValue¶
Data structures for accelerometers and gyroscopes.
-
struct OBBoolPropertyRange¶
Structure for boolean range.
-
struct OBCameraDistortion¶
Structure for distortion parameters.
-
struct OBCameraIntrinsic¶
Structure for camera internal parameters.
-
struct OBCameraParam¶
Structure for camera parameters.
-
struct OBCameraParam_V0¶
Camera parameters.
-
struct OBColorPoint¶
3D point structure with color information
-
struct OBCompressionParams¶
Compression Params
-
struct OBD2CTransform¶
Structure for rotation/transformation.
-
struct OBDataBundle¶
Internal API for future publication.
C language: data’s type is a uint8_t pointer, and the user parses data to the destination type. itemTypeSize == 1, dataSize == itemCount;
Note
This data type matches OBCmdVersion of one propertyId. PropertyId has multiple OBCmdVersion, and different OBCmdVersion of this propertyId has different data types. PropertyId and OBCmdVersion match only one data type. itemCount is the number of data types contained in data bytes. C language and C++ have differences.
C++: data’s type is the propertyId and OBCmdVersion’s data type. itemTypeSize = sizeof(T), itemCount = dataSize / itemTypeSize;
-
struct OBDataChunk¶
Structure for transmitting data blocks.
-
struct OBDepthWorkMode¶
Depth work mode.
-
struct OBDeviceSyncConfig¶
Device synchronization configuration.
- Deprecated:
This structure is deprecated, please use ob_multi_device_sync_config instead
-
struct OBDeviceTemperature¶
Temperature parameters of the device (unit: Celsius)
-
struct OBFloatPropertyRange¶
Structure for float range.
-
struct OBIntPropertyRange¶
Structure for integer range.
-
struct OBNetIpConfig¶
IP address configuration for network devices (IPv4)
-
struct OBPoint¶
3D point structure in the SDK
-
struct OBPropertyItem¶
Used to describe the characteristics of each property.
-
struct OBProtocolVersion¶
Control command protocol version number.
-
struct OBRect¶
Rectangle.
-
struct OBTofExposureThresholdControl¶
TOF Exposure Threshold.
枚举¶
-
enum OBHPStatusCode¶
senddata or recdata return status type
Values:
-
enumerator HP_STATUS_OK¶
success
-
enumerator HP_STATUS_NO_DEVICE_FOUND¶
No device found
-
enumerator HP_STATUS_CONTROL_TRANSFER_FAILED¶
Transfer failed
-
enumerator HP_STATUS_UNKNOWN_ERROR¶
Unknown error
-
enumerator HP_STATUS_OK¶
-
enum OBPermissionType¶
the permission type of api or property
Values:
-
enumerator OB_PERMISSION_DENY¶
no permission
-
enumerator OB_PERMISSION_READ¶
can read
-
enumerator OB_PERMISSION_WRITE¶
can write
-
enumerator OB_PERMISSION_READ_WRITE¶
can read and write
-
enumerator OB_PERMISSION_ANY¶
any situation above
-
enumerator OB_PERMISSION_DENY¶
-
enum OBStatus¶
error code
Values:
-
enumerator OB_STATUS_OK¶
status ok
-
enumerator OB_STATUS_ERROR¶
status error
-
enumerator OB_STATUS_OK¶
-
enum OBLogSeverity¶
log level, the higher the level, the stronger the log filter
Values:
-
enumerator OB_LOG_SEVERITY_DEBUG¶
debug
-
enumerator OB_LOG_SEVERITY_INFO¶
information
-
enumerator OB_LOG_SEVERITY_WARN¶
warning
-
enumerator OB_LOG_SEVERITY_ERROR¶
error
-
enumerator OB_LOG_SEVERITY_FATAL¶
fatal error
-
enumerator OB_LOG_SEVERITY_OFF¶
off (close LOG)
-
enumerator OB_LOG_SEVERITY_DEBUG¶
-
enum OBExceptionType¶
The exception types in the SDK, through the exception type, you can easily determine the specific type of error. For detailed error API interface functions and error logs, please refer to the information of ob_error.
Values:
-
enumerator OB_EXCEPTION_TYPE_UNKNOWN¶
Unknown error, an error not clearly defined by the SDK
-
enumerator OB_EXCEPTION_TYPE_CAMERA_DISCONNECTED¶
SDK device disconnection exception
-
enumerator OB_EXCEPTION_TYPE_PLATFORM¶
An error in the SDK adaptation platform layer means an error in the implementation of a specific system platform
-
enumerator OB_EXCEPTION_TYPE_INVALID_VALUE¶
Invalid parameter type exception, need to check input parameter
-
enumerator OB_EXCEPTION_TYPE_WRONG_API_CALL_SEQUENCE¶
Exception caused by API version mismatch
-
enumerator OB_EXCEPTION_TYPE_NOT_IMPLEMENTED¶
SDK and firmware have not yet implemented functions
-
enumerator OB_EXCEPTION_TYPE_IO¶
SDK access IO exception error
-
enumerator OB_EXCEPTION_TYPE_MEMORY¶
SDK access and use memory errors, which means that the frame fails to allocate memory
-
enumerator OB_EXCEPTION_TYPE_UNSUPPORTED_OPERATION¶
Unsupported operation type error by SDK or RGBD device
-
enumerator OB_EXCEPTION_TYPE_UNKNOWN¶
-
enum OBSensorType¶
Enumeration value describing the sensor type.
Values:
-
enumerator OB_SENSOR_UNKNOWN¶
Unknown type sensor
-
enumerator OB_SENSOR_IR¶
IR
-
enumerator OB_SENSOR_COLOR¶
Color
-
enumerator OB_SENSOR_DEPTH¶
Depth
-
enumerator OB_SENSOR_ACCEL¶
Accel
-
enumerator OB_SENSOR_GYRO¶
Gyro
-
enumerator OB_SENSOR_IR_LEFT¶
left IR
-
enumerator OB_SENSOR_IR_RIGHT¶
Right IR
-
enumerator OB_SENSOR_UNKNOWN¶
-
enum OBStreamType¶
Enumeration value describing the type of data stream.
Values:
-
enumerator OB_STREAM_UNKNOWN¶
Unknown type stream
-
enumerator OB_STREAM_VIDEO¶
Video stream (infrared, color, depth streams are all video streams)
-
enumerator OB_STREAM_IR¶
IR stream
-
enumerator OB_STREAM_COLOR¶
color stream
-
enumerator OB_STREAM_DEPTH¶
depth stream
-
enumerator OB_STREAM_ACCEL¶
Accelerometer data stream
-
enumerator OB_STREAM_GYRO¶
Gyroscope data stream
-
enumerator OB_STREAM_IR_LEFT¶
Left IR stream
-
enumerator OB_STREAM_IR_RIGHT¶
Right IR stream
-
enumerator OB_STREAM_UNKNOWN¶
-
enum OBFrameType¶
Enumeration value describing the type of frame.
Values:
-
enumerator OB_FRAME_UNKNOWN¶
Unknown frame type
-
enumerator OB_FRAME_VIDEO¶
Video frame
-
enumerator OB_FRAME_IR¶
IR frame
-
enumerator OB_FRAME_COLOR¶
Color frame
-
enumerator OB_FRAME_DEPTH¶
Depth frame
-
enumerator OB_FRAME_ACCEL¶
Accelerometer data frame
-
enumerator OB_FRAME_SET¶
Frame collection (internally contains a variety of data frames)
-
enumerator OB_FRAME_POINTS¶
Point cloud frame
-
enumerator OB_FRAME_GYRO¶
Gyroscope data frame
-
enumerator OB_FRAME_IR_LEFT¶
Left IR frame
-
enumerator OB_FRAME_IR_RIGHT¶
Right IR frame
-
enumerator OB_FRAME_UNKNOWN¶
-
enum OBFormat¶
Enumeration value describing the pixel format.
Values:
-
enumerator OB_FORMAT_YUYV¶
YUYV format
-
enumerator OB_FORMAT_YUY2¶
YUY2 format (the actual format is the same as YUYV)
-
enumerator OB_FORMAT_UYVY¶
UYVY format
-
enumerator OB_FORMAT_NV12¶
NV12 format
-
enumerator OB_FORMAT_NV21¶
NV21 format
-
enumerator OB_FORMAT_MJPG¶
MJPEG encoding format
-
enumerator OB_FORMAT_H264¶
H.264 encoding format
-
enumerator OB_FORMAT_H265¶
H.265 encoding format
-
enumerator OB_FORMAT_Y16¶
Y16 format, single channel 16-bit depth
-
enumerator OB_FORMAT_Y8¶
Y8 format, single channel 8-bit depth
-
enumerator OB_FORMAT_Y10¶
Y10 format, single channel 10-bit depth (SDK will unpack into Y16 by default)
-
enumerator OB_FORMAT_Y11¶
Y11 format, single channel 11-bit depth (SDK will unpack into Y16 by default)
-
enumerator OB_FORMAT_Y12¶
Y12 format, single channel 12-bit depth (SDK will unpack into Y16 by default)
-
enumerator OB_FORMAT_GRAY¶
GRAY (the actual format is the same as YUYV)
-
enumerator OB_FORMAT_HEVC¶
HEVC encoding format (the actual format is the same as H265)
-
enumerator OB_FORMAT_I420¶
I420 format
-
enumerator OB_FORMAT_ACCEL¶
Acceleration data format
-
enumerator OB_FORMAT_GYRO¶
Gyroscope data format
-
enumerator OB_FORMAT_POINT¶
XYZ 3D coordinate point format
-
enumerator OB_FORMAT_RGB_POINT¶
XYZ 3D coordinate point format with RGB information
-
enumerator OB_FORMAT_RLE¶
RLE pressure test format (SDK will be unpacked into Y16 by default)
-
enumerator OB_FORMAT_RGB¶
RGB format (actual RGB888)
-
enumerator OB_FORMAT_BGR¶
BGR format (actual BGR888)
-
enumerator OB_FORMAT_Y14¶
Y14 format, single channel 14-bit depth (SDK will unpack into Y16 by default)
-
enumerator OB_FORMAT_BGRA¶
BGRA format
-
enumerator OB_FORMAT_COMPRESSED¶
Compression format
-
enumerator OB_FORMAT_RVL¶
RVL pressure test format (SDK will be unpacked into Y16 by default)
-
enumerator OB_FORMAT_UNKNOWN¶
unknown format
-
enumerator OB_FORMAT_YUYV¶
-
enum OBUpgradeState¶
Enumeration value describing the firmware upgrade status.
Values:
-
enumerator STAT_VERIFY_SUCCESS¶
Image file verifify success
-
enumerator STAT_FILE_TRANSFER¶
file transfer
-
enumerator STAT_DONE¶
update completed
-
enumerator STAT_IN_PROGRESS¶
upgrade in process
-
enumerator STAT_START¶
start the upgrade
-
enumerator STAT_VERIFY_IMAGE¶
Image file verification
-
enumerator ERR_VERIFY¶
Verification failed
-
enumerator ERR_PROGRAM¶
Program execution failed
-
enumerator ERR_ERASE¶
Flash parameter failed
-
enumerator ERR_FLASH_TYPE¶
Flash type error
-
enumerator ERR_IMAGE_SIZE¶
Image file size error
-
enumerator ERR_OTHER¶
other errors
-
enumerator ERR_DDR¶
DDR access error
-
enumerator ERR_TIMEOUT¶
timeout error
-
enumerator STAT_VERIFY_SUCCESS¶
-
enum OBFileTranState¶
Enumeration value describing the file transfer status.
Values:
-
enumerator FILE_TRAN_STAT_TRANSFER¶
File transfer
-
enumerator FILE_TRAN_STAT_DONE¶
File transfer succeeded
-
enumerator FILE_TRAN_STAT_PREPAR¶
Preparing
-
enumerator FILE_TRAN_ERR_DDR¶
DDR access failed
-
enumerator FILE_TRAN_ERR_NOT_ENOUGH_SPACE¶
Insufficient target space error
-
enumerator FILE_TRAN_ERR_PATH_NOT_WRITABLE¶
Destination path is not writable
-
enumerator FILE_TRAN_ERR_MD5_ERROR¶
MD5 checksum error
-
enumerator FILE_TRAN_ERR_WRITE_FLASH_ERROR¶
Write flash error
-
enumerator FILE_TRAN_ERR_TIMEOUT¶
Timeout error
-
enumerator FILE_TRAN_STAT_TRANSFER¶
-
enum OBDataTranState¶
Enumeration value describing the data transfer status.
Values:
-
enumerator DATA_TRAN_STAT_VERIFY_DONE¶
data verify done
-
enumerator DATA_TRAN_STAT_STOPPED¶
data transfer stoped
-
enumerator DATA_TRAN_STAT_DONE¶
data transfer completed
-
enumerator DATA_TRAN_STAT_VERIFYING¶
data verifying
-
enumerator DATA_TRAN_STAT_TRANSFERRING¶
data transferring
-
enumerator DATA_TRAN_ERR_BUSY¶
Transmission is busy
-
enumerator DATA_TRAN_ERR_UNSUPPORTED¶
Not supported
-
enumerator DATA_TRAN_ERR_TRAN_FAILED¶
Transfer failed
-
enumerator DATA_TRAN_ERR_VERIFY_FAILED¶
Test failed
-
enumerator DATA_TRAN_ERR_OTHER¶
Other errors
-
enumerator DATA_TRAN_STAT_VERIFY_DONE¶
-
enum OBAlignMode¶
Alignment mode.
Values:
-
enumerator ALIGN_DISABLE¶
Turn off alignment
-
enumerator ALIGN_D2C_HW_MODE¶
Hardware D2C alignment mode
-
enumerator ALIGN_D2C_SW_MODE¶
Software D2C alignment mode
-
enumerator ALIGN_DISABLE¶
-
enum OBConvertFormat¶
Enumeration of format conversion types.
Values:
-
enumerator FORMAT_YUYV_TO_RGB888¶
YUYV to RGB888
-
enumerator FORMAT_I420_TO_RGB888¶
I420 to RGB888
-
enumerator FORMAT_NV21_TO_RGB888¶
NV21 to RGB888
-
enumerator FORMAT_NV12_TO_RGB888¶
NV12 to RGB888
-
enumerator FORMAT_MJPG_TO_I420¶
MJPG to I420
-
enumerator FORMAT_RGB888_TO_BGR¶
RGB888 to BGR
-
enumerator FORMAT_MJPG_TO_NV21¶
MJPG to NV21
-
enumerator FORMAT_MJPG_TO_RGB888¶
MJPG to RGB888
-
enumerator FORMAT_MJPG_TO_BGR888¶
MJPG to BGR888
-
enumerator FORMAT_MJPG_TO_BGRA¶
MJPG to BGRA
-
enumerator FORMAT_UYVY_TO_RGB888¶
UYVY to RGB888
-
enumerator FORMAT_BGR_TO_RGB¶
BGR to RGB
-
enumerator FORMAT_YUYV_TO_RGB888¶
-
enum OBGyroSampleRate¶
Enumeration of IMU sample rate values (gyroscope or accelerometer)
Values:
-
enumerator OB_SAMPLE_RATE_1_5625_HZ¶
1.5625Hz
-
enumerator OB_SAMPLE_RATE_3_125_HZ¶
3.125Hz
-
enumerator OB_SAMPLE_RATE_6_25_HZ¶
6.25Hz
-
enumerator OB_SAMPLE_RATE_12_5_HZ¶
12.5Hz
-
enumerator OB_SAMPLE_RATE_25_HZ¶
25Hz
-
enumerator OB_SAMPLE_RATE_50_HZ¶
50Hz
-
enumerator OB_SAMPLE_RATE_100_HZ¶
100Hz
-
enumerator OB_SAMPLE_RATE_200_HZ¶
200Hz
-
enumerator OB_SAMPLE_RATE_500_HZ¶
500Hz
-
enumerator OB_SAMPLE_RATE_1_KHZ¶
1KHz
-
enumerator OB_SAMPLE_RATE_2_KHZ¶
2KHz
-
enumerator OB_SAMPLE_RATE_4_KHZ¶
4KHz
-
enumerator OB_SAMPLE_RATE_8_KHZ¶
8KHz
-
enumerator OB_SAMPLE_RATE_16_KHZ¶
16KHz
-
enumerator OB_SAMPLE_RATE_32_KHZ¶
32Hz
-
enumerator OB_SAMPLE_RATE_1_5625_HZ¶
-
enum OBGyroFullScaleRange¶
Enumeration of gyroscope ranges.
Values:
-
enumerator OB_GYRO_FS_16dps¶
16 degrees per second
-
enumerator OB_GYRO_FS_31dps¶
31 degrees per second
-
enumerator OB_GYRO_FS_62dps¶
62 degrees per second
-
enumerator OB_GYRO_FS_125dps¶
125 degrees per second
-
enumerator OB_GYRO_FS_250dps¶
250 degrees per second
-
enumerator OB_GYRO_FS_500dps¶
500 degrees per second
-
enumerator OB_GYRO_FS_1000dps¶
1000 degrees per second
-
enumerator OB_GYRO_FS_2000dps¶
2000 degrees per second
-
enumerator OB_GYRO_FS_16dps¶
-
enum OBAccelFullScaleRange¶
Enumeration of accelerometer ranges.
Values:
-
enumerator OB_ACCEL_FS_2g¶
1x the acceleration of gravity
-
enumerator OB_ACCEL_FS_4g¶
4x the acceleration of gravity
-
enumerator OB_ACCEL_FS_8g¶
8x the acceleration of gravity
-
enumerator OB_ACCEL_FS_16g¶
16x the acceleration of gravity
-
enumerator OB_ACCEL_FS_2g¶
-
enum OBDepthCroppingMode¶
Enumeration for depth crop modes.
Values:
-
enumerator DEPTH_CROPPING_MODE_AUTO¶
Automatic mode
-
enumerator DEPTH_CROPPING_MODE_CLOSE¶
Close crop
-
enumerator DEPTH_CROPPING_MODE_OPEN¶
Open crop
-
enumerator DEPTH_CROPPING_MODE_AUTO¶
-
enum OBDeviceType¶
Enumeration for device types.
Values:
-
enumerator OB_STRUCTURED_LIGHT_MONOCULAR_CAMERA¶
Monocular structured light camera
-
enumerator OB_STRUCTURED_LIGHT_BINOCULAR_CAMERA¶
Binocular structured light camera
-
enumerator OB_TOF_CAMERA¶
Time-of-flight camera
-
enumerator OB_STRUCTURED_LIGHT_MONOCULAR_CAMERA¶
-
enum OBMediaType¶
Enumeration for types of media to record or playback.
Values:
-
enumerator OB_MEDIA_COLOR_STREAM¶
Color stream
-
enumerator OB_MEDIA_DEPTH_STREAM¶
Depth stream
-
enumerator OB_MEDIA_IR_STREAM¶
Infrared stream
-
enumerator OB_MEDIA_GYRO_STREAM¶
Gyroscope stream
-
enumerator OB_MEDIA_ACCEL_STREAM¶
Accelerometer stream
-
enumerator OB_MEDIA_CAMERA_PARAM¶
Camera parameter
-
enumerator OB_MEDIA_DEVICE_INFO¶
Device information
-
enumerator OB_MEDIA_STREAM_INFO¶
Stream information
-
enumerator OB_MEDIA_IR_LEFT_STREAM¶
Left infrared stream
-
enumerator OB_MEDIA_IR_RIGHT_STREAM¶
Right infrared stream
-
enumerator OB_MEDIA_ALL¶
All media data types
-
enumerator OB_MEDIA_COLOR_STREAM¶
-
enum OBMediaState¶
Enumeration for record playback status.
Values:
-
enumerator OB_MEDIA_BEGIN¶
Begin
-
enumerator OB_MEDIA_PAUSE¶
Pause
-
enumerator OB_MEDIA_RESUME¶
Resume
-
enumerator OB_MEDIA_END¶
End
-
enumerator OB_MEDIA_BEGIN¶
-
enum OBDepthPrecisionLevel¶
Enumeration for depth precision levels.
- Attention
The depth precision level does not completely determine the depth unit and real precision, and the influence of the data packaging format needs to be considered. The specific unit can be obtained through getValueScale() of DepthFrame
Values:
-
enumerator OB_PRECISION_1MM¶
1mm
-
enumerator OB_PRECISION_0MM8¶
0.8mm
-
enumerator OB_PRECISION_0MM4¶
0.4mm
-
enumerator OB_PRECISION_0MM1¶
0.1mm
-
enumerator OB_PRECISION_0MM2¶
0.2mm
-
enumerator OB_PRECISION_0MM5¶
0.5mm
-
enumerator OB_PRECISION_0MM05¶
0.05mm
-
enumerator OB_PRECISION_UNKNOWN¶
-
enumerator OB_PRECISION_COUNT¶
-
enum OBTofFilterRange¶
Enumeration for TOF filter scene ranges.
Values:
-
enumerator OB_TOF_FILTER_RANGE_CLOSE¶
Close range
-
enumerator OB_TOF_FILTER_RANGE_MIDDLE¶
Middle range
-
enumerator OB_TOF_FILTER_RANGE_LONG¶
Long range
-
enumerator OB_TOF_FILTER_RANGE_DEBUG¶
Debug range
-
enumerator OB_TOF_FILTER_RANGE_CLOSE¶
-
enum OBCompressionMode¶
Compression mode.
Values:
-
enumerator OB_COMPRESSION_LOSSLESS¶
Lossless compression mode
-
enumerator OB_COMPRESSION_LOSSY¶
Lossy compression mode
-
enumerator OB_COMPRESSION_LOSSLESS¶
-
enum OBSyncMode¶
Sync mode.
- Deprecated:
This define is deprecated, please use ob_multi_device_sync_mode instead
Values:
-
enumerator OB_SYNC_MODE_CLOSE¶
Close synchronize mode.
Single device, neither process input trigger signal nor output trigger signal
Each Sensor in a single device automatically triggers
-
enumerator OB_SYNC_MODE_STANDALONE¶
Standalone synchronize mode.
Single device, neither process input trigger signal nor output trigger signal
Inside single device, RGB as Major sensor: RGB -> IR/Depth/TOF
-
enumerator OB_SYNC_MODE_PRIMARY¶
Primary synchronize mode.
Primary device. Ignore process input trigger signal, only output trigger signal to secondary devices.
Inside single device, RGB as Major sensor: RGB -> IR/Depth/TOF
-
enumerator OB_SYNC_MODE_SECONDARY¶
Secondary synchronize mode.
Secondary device. Both process input trigger signal and output trigger signal to other devices.
Different sensors in a single devices receive trigger signals respectively:ext trigger -> RGB && ext trigger -> IR/Depth/TOF
- Attention
With the current Gemini 2 device set to this mode, each Sensor receives the first external trigger signal after the stream is turned on and starts timing self-triggering at the set frame rate until the stream is turned off
-
enumerator OB_SYNC_MODE_PRIMARY_MCU_TRIGGER¶
MCU Primary synchronize mode.
Primary device. Ignore process input trigger signal, only output trigger signal to secondary devices.
Inside device, MCU is the primary signal source: MCU -> RGB && MCU -> IR/Depth/TOF
-
enumerator OB_SYNC_MODE_PRIMARY_IR_TRIGGER¶
IR Primary synchronize mode.
Primary device. Ignore process input trigger signal, only output trigger signal to secondary devices.
Inside device, IR is the primary signal source: IR/Depth/TOF -> RGB
-
enumerator OB_SYNC_MODE_PRIMARY_SOFT_TRIGGER¶
Software trigger synchronize mode.
Host, triggered by software control (receive the upper computer command trigger), at the same time to the trunk output trigger signal
Different sensors in a single machine receive trigger signals respectively: soft trigger -> RGB && soft trigger -> IR/Depth/TOF
- Attention
Support product: Gemini2
-
enumerator OB_SYNC_MODE_SECONDARY_SOFT_TRIGGER¶
Software trigger synchronize mode as secondary device.
The slave receives the external trigger signal (the external trigger signal comes from the soft trigger host) and outputs the trigger signal to the external relay.
Different sensors in a single machine receive trigger signals respectively:ext trigger -> RGB && ext trigger -> IR/Depth/TOF
-
enumerator OB_SYNC_MODE_UNKNOWN¶
Unknown type.
-
enum OB_CMD_VERSION¶
Command version associated with property id.
Values:
-
enumerator OB_CMD_VERSION_V0¶
Version 1.0.
-
enumerator OB_CMD_VERSION_V1¶
Version 2.0.
-
enumerator OB_CMD_VERSION_V2¶
Version 3.0.
-
enumerator OB_CMD_VERSION_V3¶
Version 4.0.
-
enumerator OB_CMD_VERSION_NOVERSION¶
-
enumerator OB_CMD_VERSION_INVALID¶
Invalid version.
-
enumerator OB_CMD_VERSION_V0¶
-
enum OBCommunicationType¶
Device communication mode.
Values:
-
enumerator OB_COMM_USB¶
USB.
-
enumerator OB_COMM_NET¶
Ethernet.
-
enumerator OB_COMM_USB¶
-
enum OBUSBPowerState¶
USB power status.
Values:
-
enumerator OB_USB_POWER_NO_PLUGIN¶
No plugin.
-
enumerator OB_USB_POWER_5V_0A9¶
5V/0.9A
-
enumerator OB_USB_POWER_5V_1A5¶
5V/1.5A
-
enumerator OB_USB_POWER_5V_3A0¶
5V/3.0A
-
enumerator OB_USB_POWER_NO_PLUGIN¶
-
enum OBDCPowerState¶
DC power status.
Values:
-
enumerator OB_DC_POWER_NO_PLUGIN¶
No plugin.
-
enumerator OB_DC_POWER_PLUGIN¶
Plugin.
-
enumerator OB_DC_POWER_NO_PLUGIN¶
-
enum ob_rotate_degree_type¶
Rotate degree.
Values:
-
enumerator OB_ROTATE_DEGREE_0¶
Rotate 0.
-
enumerator OB_ROTATE_DEGREE_90¶
Rotate 90.
-
enumerator OB_ROTATE_DEGREE_180¶
Rotate 180.
-
enumerator OB_ROTATE_DEGREE_270¶
Rotate 270.
-
enumerator OB_ROTATE_DEGREE_0¶
-
enum ob_power_line_freq_mode¶
Power line frequency mode, for color camera anti-flicker configuration.
Values:
-
enumerator OB_POWER_LINE_FREQ_MODE_CLOSE¶
Close.
-
enumerator OB_POWER_LINE_FREQ_MODE_50HZ¶
50Hz
-
enumerator OB_POWER_LINE_FREQ_MODE_60HZ¶
60Hz
-
enumerator OB_POWER_LINE_FREQ_MODE_CLOSE¶
-
enum OB_FRAME_AGGREGATE_OUTPUT_MODE¶
Frame aggregate output mode.
Values:
-
enumerator OB_FRAME_AGGREGATE_OUTPUT_FULL_FRAME_REQUIRE¶
Only FrameSet that contains all types of data frames will be output.
-
enumerator OB_FRAME_AGGREGATE_OUTPUT_COLOR_FRAME_REQUIRE¶
Color Frame Require output mode.
Suitable for Color using H264, H265 and other inter-frame encoding format open stream
- Attention
In this mode, the user may return null when getting a non-Color type data frame from the acquired FrameSet
-
enumerator OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION¶
FrameSet for any case will be output.
- Attention
In this mode, the user may return null when getting the specified type of data frame from the acquired FrameSet
-
enumerator OB_FRAME_AGGREGATE_OUTPUT_FULL_FRAME_REQUIRE¶
-
enum OB_COORDINATE_SYSTEM_TYPE¶
Enumeration of point cloud coordinate system types.
Values:
-
enumerator OB_LEFT_HAND_COORDINATE_SYSTEM¶
-
enumerator OB_RIGHT_HAND_COORDINATE_SYSTEM¶
-
enumerator OB_LEFT_HAND_COORDINATE_SYSTEM¶
-
enum OB_DEVICE_DEVELOPMENT_MODE¶
Enumeration of device development modes.
Values:
-
enumerator OB_USER_MODE¶
User mode (default mode), which provides full camera device functionality.
-
enumerator OB_DEVELOPER_MODE¶
Developer mode, which allows developers to access the operating system and software/hardware resources on the device directly.
-
enumerator OB_USER_MODE¶
-
enum ob_multi_device_sync_mode¶
The synchronization mode of the device.
Values:
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_FREE_RUN¶
free run mode
The device does not synchronize with other devices,
The Color and Depth can be set to different frame rates.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_STANDALONE¶
standalone mode
The device does not synchronize with other devices.
The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_PRIMARY¶
primary mode
The device is the primary device in the multi-device system, it will output the trigger signal via VSYNC_OUT pin on synchronization port by default.
The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by colorDelayUs, depthDelayUs or trigger2ImageDelayUs.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_SECONDARY¶
secondary mode
The device is the secondary device in the multi-device system, it will receive the trigger signal via VSYNC_IN pin on synchronization port. It will out the trigger signal via VSYNC_OUT pin on synchronization port by default.
The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by colorDelayUs, depthDelayUs or trigger2ImageDelayUs.
After starting the stream, the device will wait for the trigger signal to start capturing images, and will stop capturing images when the trigger signal is stopped.
- Attention
The frequency of the trigger signal should be same as the frame rate of the stream profile which is set when starting the stream.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_SECONDARY_SYNCED¶
secondary synced mode
The device is the secondary device in the multi-device system, it will receive the trigger signal via VSYNC_IN pin on synchronization port. It will out the trigger signal via VSYNC_OUT pin on synchronization port by default.
The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by colorDelayUs, depthDelayUs or trigger2ImageDelayUs.
After starting the stream, the device will be immediately start capturing images, and will adjust the capture time when the trigger signal is received to synchronize with the primary device. If the trigger signal is stopped, the device will still capture images.
- Attention
The frequency of the trigger signal should be same as the frame rate of the stream profile which is set when starting the stream.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_SOFTWARE_TRIGGERING¶
software triggering mode
The device will start one time image capture after receiving the capture command and will output the trigger signal via VSYNC_OUT pin by default. The capture command can be sent form host by call ob_device_trigger_capture. The number of images captured each time can be set by framesPerTrigger.
The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by colorDelayUs, depthDelayUs or trigger2ImageDelayUs.
The frequency of the user call ob_device_trigger_capture to send the capture command multiplied by the number of frames per trigger should be less than the frame rate of the stream profile which is set when starting the stream.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_HARDWARE_TRIGGERING¶
hardware triggering mode
The device will start one time image capture after receiving the trigger signal via VSYNC_IN pin on synchronization port and will output the trigger signal via VSYNC_OUT pin by default. The number of images captured each time can be set by framesPerTrigger.
The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by colorDelayUs, depthDelayUs or trigger2ImageDelayUs.
- Attention
The frequency of the trigger signal multiplied by the number of frames per trigger should be less than the frame rate of the stream profile which is set when starting the stream.
- Attention
The trigger signal input via VSYNC_IN pin on synchronization port should be ouput by other device via VSYNC_OUT pin in hardware triggering mode or software triggering mode.
- Attention
Due to different models may have different signal input requirements, please do not use different models to output trigger signal as input-trigger signal.
-
enumerator OB_MULTI_DEVICE_SYNC_MODE_FREE_RUN¶
-
enum OBPropertyID¶
Enumeration value describing all attribute control commands of the device.
Values:
-
enumerator OB_PROP_LDP_BOOL¶
LDP switch.
-
enumerator OB_PROP_LASER_BOOL¶
Laser switch.
-
enumerator OB_PROP_LASER_PULSE_WIDTH_INT¶
laser pulse width
-
enumerator OB_PROP_LASER_CURRENT_FLOAT¶
Laser current (uint: mA)
-
enumerator OB_PROP_FLOOD_BOOL¶
IR flood switch.
-
enumerator OB_PROP_FLOOD_LEVEL_INT¶
IR flood level.
-
enumerator OB_PROP_DEPTH_MIRROR_BOOL¶
Depth mirror.
-
enumerator OB_PROP_DEPTH_FLIP_BOOL¶
Depth flip.
-
enumerator OB_PROP_DEPTH_POSTFILTER_BOOL¶
Depth Postfilter.
-
enumerator OB_PROP_DEPTH_HOLEFILTER_BOOL¶
Depth Holefilter.
-
enumerator OB_PROP_IR_MIRROR_BOOL¶
IR mirror.
-
enumerator OB_PROP_IR_FLIP_BOOL¶
IR flip.
-
enumerator OB_PROP_MIN_DEPTH_INT¶
Minimum depth threshold.
-
enumerator OB_PROP_MAX_DEPTH_INT¶
Maximum depth threshold.
-
enumerator OB_PROP_DEPTH_SOFT_FILTER_BOOL¶
Software filter switch.
-
enumerator OB_PROP_LDP_STATUS_BOOL¶
LDP status.
-
enumerator OB_PROP_DEPTH_MAX_DIFF_INT¶
soft filter maxdiff param
-
enumerator OB_PROP_DEPTH_MAX_SPECKLE_SIZE_INT¶
soft filter maxSpeckleSize
-
enumerator OB_PROP_DEPTH_ALIGN_HARDWARE_BOOL¶
Hardware d2c is on.
-
enumerator OB_PROP_TIMESTAMP_OFFSET_INT¶
Timestamp adjustment.
-
enumerator OB_PROP_HARDWARE_DISTORTION_SWITCH_BOOL¶
Hardware distortion switch Rectify.
-
enumerator OB_PROP_FAN_WORK_MODE_INT¶
Fan mode switch.
-
enumerator OB_PROP_DEPTH_ALIGN_HARDWARE_MODE_INT¶
Multi-resolution D2C mode.
-
enumerator OB_PROP_ANTI_COLLUSION_ACTIVATION_STATUS_BOOL¶
Anti_collusion activation status.
-
enumerator OB_PROP_DEPTH_PRECISION_LEVEL_INT¶
the depth precision level, which may change the depth frame data unit, needs to be confirmed through the ValueScale interface of DepthFrame
-
enumerator OB_PROP_TOF_FILTER_RANGE_INT¶
tof filter range configuration
-
enumerator OB_PROP_LASER_MODE_INT¶
laser mode, the firmware terminal currently only return 1: IR Drive, 2: Torch
-
enumerator OB_PROP_RECTIFY2_BOOL¶
brt2r-rectify function switch (brt2r is a special module on mx6600), 0: Disable, 1: Rectify Enable
-
enumerator OB_PROP_COLOR_MIRROR_BOOL¶
Color mirror.
-
enumerator OB_PROP_COLOR_FLIP_BOOL¶
Color flip.
-
enumerator OB_PROP_INDICATOR_LIGHT_BOOL¶
Indicator switch, 0: Disable, 1: Enable.
-
enumerator OB_PROP_DISPARITY_TO_DEPTH_BOOL¶
Disparity to depth switch, 0: off, the depth stream outputs the disparity map; 1. On, the depth stream outputs the depth map.
-
enumerator OB_PROP_BRT_BOOL¶
BRT function switch (anti-background interference), 0: Disable, 1: Enable.
-
enumerator OB_PROP_WATCHDOG_BOOL¶
Watchdog function switch, 0: Disable, 1: Enable.
-
enumerator OB_PROP_EXTERNAL_SIGNAL_RESET_BOOL¶
External signal trigger restart function switch, 0: Disable, 1: Enable.
-
enumerator OB_PROP_HEARTBEAT_BOOL¶
Heartbeat monitoring function switch, 0: Disable, 1: Enable.
-
enumerator OB_PROP_DEPTH_CROPPING_MODE_INT¶
Depth cropping mode device: OB_DEPTH_CROPPING_MODE.
-
enumerator OB_PROP_D2C_PREPROCESS_BOOL¶
D2C preprocessing switch (such as RGB cropping), 0: off, 1: on.
-
enumerator OB_PROP_RGB_CUSTOM_CROP_BOOL¶
Custom RGB cropping switch, 0 is off, 1 is on custom cropping, and the ROI cropping area is issued.
-
enumerator OB_PROP_DEVICE_WORK_MODE_INT¶
Device operating mode (power consumption)
-
enumerator OB_PROP_DEVICE_COMMUNICATION_TYPE_INT¶
Device communication type, 0: USB; 1: Ethernet(RTSP)
-
enumerator OB_PROP_SWITCH_IR_MODE_INT¶
Switch infrared imaging mode, 0: active IR mode, 1: passive IR mode.
-
enumerator OB_PROP_LASER_ENERGY_LEVEL_INT¶
Laser energy level.
-
enumerator OB_PROP_LDP_MEASURE_DISTANCE_INT¶
LDP’s measure distance, unit: mm.
-
enumerator OB_PROP_TIMER_RESET_SIGNAL_BOOL¶
Reset device time to zero.
-
enumerator OB_PROP_TIMER_RESET_TRIGGER_OUT_ENABLE_BOOL¶
Enable send reset device time signal to other device. true: enable, false: disable.
-
enumerator OB_PROP_TIMER_RESET_DELAY_US_INT¶
Delay to reset device time, unit: us.
-
enumerator OB_PROP_CAPTURE_IMAGE_SIGNAL_BOOL¶
Signal to capture image.
-
enumerator OB_PROP_IR_RIGHT_MIRROR_BOOL¶
Right IR sensor mirror state.
-
enumerator OB_PROP_CAPTURE_IMAGE_FRAME_NUMBER_INT¶
Number frame to capture once a ‘OB_PROP_CAPTURE_IMAGE_SIGNAL_BOOL’ effect. range: [1, 255].
-
enumerator OB_PROP_IR_RIGHT_FLIP_BOOL¶
Right IR sensor flip state. true: flip image, false: origin, default: false.
-
enumerator OB_PROP_COLOR_ROTATE_INT¶
Color sensor rotation, angle{0, 90, 180, 270}.
-
enumerator OB_PROP_IR_ROTATE_INT¶
IR/Left-IR sensor rotation, angle{0, 90, 180, 270}.
-
enumerator OB_PROP_IR_RIGHT_ROTATE_INT¶
Right IR sensor rotation, angle{0, 90, 180, 270}.
-
enumerator OB_PROP_DEPTH_ROTATE_INT¶
Depth sensor rotation, angle{0, 90, 180, 270}.
-
enumerator OB_PROP_LASER_HW_ENERGY_LEVEL_INT¶
Get hardware laser energy level which real state of laser element. OB_PROP_LASER_ENERGY_LEVEL_INT(99)will effect this command which it setting and changed the hardware laser energy level.
-
enumerator OB_PROP_USB_POWER_STATE_INT¶
USB’s power state, enum type: OBUSBPowerState.
-
enumerator OB_PROP_DC_POWER_STATE_INT¶
DC’s power state, enum type: OBDCPowerState.
-
enumerator OB_PROP_DEVICE_DEVELOPMENT_MODE_INT¶
Device development mode switch, optional modes can refer to the definition in OBDeviceDevelopmentMode,the default mode is OB_USER_MODE.
- Attention
The device takes effect after rebooting when switching modes.
-
enumerator OB_PROP_SYNC_SIGNAL_TRIGGER_OUT_BOOL¶
Multi-DeviceSync synchronized signal trigger out is enable state. true: enable, false: disable.
-
enumerator OB_PROP_RESTORE_FACTORY_SETTINGS_BOOL¶
Restore factory settings and factory parameters.
- Attention
This command can only be written, and the parameter value must be true. The command takes effect after restarting the device.
-
enumerator OB_PROP_BOOT_INTO_RECOVERY_MODE_BOOL¶
Enter recovery mode (flashing mode) when boot the device.
- Attention
The device will take effect after rebooting with the enable option. After entering recovery mode, you can upgrade the device system. Upgrading the system may cause system damage, please use it with caution.
-
enumerator OB_PROP_DEVICE_IN_RECOVERY_MODE_BOOL¶
Query whether the current device is running in recovery mode (read-only)
-
enumerator OB_PROP_CAPTURE_INTERVAL_MODE_INT¶
Capture interval mode, 0:time interval, 1:number interval.
-
enumerator OB_PROP_CAPTURE_IMAGE_TIME_INTERVAL_INT¶
Capture time interval.
-
enumerator OB_PROP_CAPTURE_IMAGE_NUMBER_INTERVAL_INT¶
Capture number interval.
-
enumerator OB_PROP_TIMER_RESET_ENABLE_BOOL¶
-
enumerator OB_PROP_DEVICE_USB3_REPEAT_IDENTIFY_BOOL¶
Enable switch for USB3.0 repeated recognition on the device.
-
enumerator OB_PROP_DEVICE_REBOOT_DELAY_INT¶
Reboot device delay mode. Delay time unit: ms, range: [0, 8000).
-
enumerator OB_PROP_LASER_OVERCURRENT_PROTECTION_STATUS_BOOL¶
Query the status of laser overcurrent protection (read-only)
-
enumerator OB_PROP_LASER_PULSE_WIDTH_PROTECTION_STATUS_BOOL¶
Query the status of laser pulse width protection (read-only)
-
enumerator OB_STRUCT_BASELINE_CALIBRATION_PARAM¶
Baseline calibration parameters.
-
enumerator OB_STRUCT_DEVICE_TEMPERATURE¶
Device temperature information.
-
enumerator OB_STRUCT_TOF_EXPOSURE_THRESHOLD_CONTROL¶
TOF exposure threshold range.
-
enumerator OB_STRUCT_DEVICE_SERIAL_NUMBER¶
get/set serial number
-
enumerator OB_STRUCT_DEVICE_TIME¶
get/set device time
-
enumerator OB_STRUCT_MULTI_DEVICE_SYNC_CONFIG¶
Multi-device synchronization mode and parameter configuration.
-
enumerator OB_STRUCT_RGB_CROP_ROI¶
RGB cropping ROI.
-
enumerator OB_STRUCT_DEVICE_IP_ADDR_CONFIG¶
Device IP address configuration.
-
enumerator OB_STRUCT_CURRENT_DEPTH_ALG_MODE¶
The current camera depth mode.
-
enumerator OB_STRUCT_DEPTH_PRECISION_SUPPORT_LIST¶
A list of depth accuracy levels, returning an array of uin16_t, corresponding to the enumeration.
-
enumerator OB_STRUCT_DEVICE_STATIC_IP_CONFIG_RECORD¶
Device network static ip config record.
Using for get last static ip config,witch is record in device flash when user set static ip config
- Attention
read only
-
enumerator OB_PROP_COLOR_AUTO_EXPOSURE_BOOL¶
Color camera auto exposure.
-
enumerator OB_PROP_COLOR_EXPOSURE_INT¶
Color camera exposure adjustment.
-
enumerator OB_PROP_COLOR_GAIN_INT¶
Color camera gain adjustment.
-
enumerator OB_PROP_COLOR_AUTO_WHITE_BALANCE_BOOL¶
Color camera automatic white balance.
-
enumerator OB_PROP_COLOR_WHITE_BALANCE_INT¶
Color camera white balance adjustment.
-
enumerator OB_PROP_COLOR_BRIGHTNESS_INT¶
Color camera brightness adjustment.
-
enumerator OB_PROP_COLOR_SHARPNESS_INT¶
Color camera sharpness adjustment.
-
enumerator OB_PROP_COLOR_SHUTTER_INT¶
Color camera shutter adjustment.
-
enumerator OB_PROP_COLOR_SATURATION_INT¶
Color camera saturation adjustment.
-
enumerator OB_PROP_COLOR_CONTRAST_INT¶
Color camera contrast adjustment.
-
enumerator OB_PROP_COLOR_GAMMA_INT¶
Color camera gamma adjustment.
-
enumerator OB_PROP_COLOR_ROLL_INT¶
Color camera image rotation.
-
enumerator OB_PROP_COLOR_AUTO_EXPOSURE_PRIORITY_INT¶
Color camera auto exposure priority.
-
enumerator OB_PROP_COLOR_BACKLIGHT_COMPENSATION_INT¶
Color camera brightness compensation.
-
enumerator OB_PROP_COLOR_HUE_INT¶
Color camera color tint.
-
enumerator OB_PROP_COLOR_POWER_LINE_FREQUENCY_INT¶
Color Camera Power Line Frequency.
-
enumerator OB_PROP_DEPTH_AUTO_EXPOSURE_BOOL¶
Automatic exposure of depth camera (infrared camera will be set synchronously under some models of devices)
-
enumerator OB_PROP_DEPTH_EXPOSURE_INT¶
Depth camera exposure adjustment (infrared cameras will be set synchronously under some models of devices)
-
enumerator OB_PROP_DEPTH_GAIN_INT¶
Depth camera gain adjustment (infrared cameras will be set synchronously under some models of devices)
-
enumerator OB_PROP_IR_AUTO_EXPOSURE_BOOL¶
Infrared camera auto exposure (depth camera will be set synchronously under some models of devices)
-
enumerator OB_PROP_IR_EXPOSURE_INT¶
Infrared camera exposure adjustment (some models of devices will set the depth camera synchronously)
-
enumerator OB_PROP_IR_GAIN_INT¶
Infrared camera gain adjustment (the depth camera will be set synchronously under some models of devices)
-
enumerator OB_PROP_IR_CHANNEL_DATA_SOURCE_INT¶
Select Infrared camera data source channel. If not support throw exception. 0 : IR stream from IR Left sensor; 1 : IR stream from IR Right sensor;.
-
enumerator OB_PROP_DEPTH_RM_FILTER_BOOL¶
Depth effect dedistortion, true: on, false: off. mutually exclusive with D2C function, RM_Filter disable When hardware or software D2C is enabled.
-
enumerator OB_PROP_COLOR_MAXIMAL_GAIN_INT¶
Color camera maximal gain.
-
enumerator OB_PROP_COLOR_MAXIMAL_SHUTTER_INT¶
Color camera shutter gain.
-
enumerator OB_PROP_IR_SHORT_EXPOSURE_BOOL¶
The enable/disable switch for IR short exposure function, supported only by a few devices.
-
enumerator OB_PROP_SDK_DISPARITY_TO_DEPTH_BOOL¶
Software disparity to depth.
-
enumerator OB_PROP_SDK_DEPTH_FRAME_UNPACK_BOOL¶
Depth data unpacking function switch (each open stream will be turned on by default, support RLE/Y10/Y11/Y12/Y14 format)
-
enumerator OB_PROP_SDK_IR_FRAME_UNPACK_BOOL¶
IR data unpacking function switch (each current will be turned on by default, support RLE/Y10/Y11/Y12/Y14 format)
-
enumerator OB_PROP_SDK_ACCEL_FRAME_TRANSFORMED_BOOL¶
Accel data conversion function switch (on by default)
-
enumerator OB_PROP_SDK_GYRO_FRAME_TRANSFORMED_BOOL¶
Gyro data conversion function switch (on by default)
-
enumerator OB_PROP_SDK_IR_LEFT_FRAME_UNPACK_BOOL¶
Left IR frame data unpacking function switch (each current will be turned on by default, support RLE/Y10/Y11/Y12/Y14 format)
-
enumerator OB_PROP_SDK_IR_RIGHT_FRAME_UNPACK_BOOL¶
Right IR frame data unpacking function switch (each current will be turned on by default, support RLE/Y10/Y11/Y12/Y14 format)
-
enumerator OB_RAW_DATA_CAMERA_CALIB_JSON_FILE¶
Calibration JSON file read from device (Femto Mega, read only)
-
enumerator OB_PROP_LDP_BOOL¶
类型定义¶
-
typedef struct ContextImpl ob_context¶
-
typedef struct DeviceImpl ob_device¶
-
typedef struct DeviceInfoImpl ob_device_info¶
-
typedef struct DeviceListImpl ob_device_list¶
-
typedef struct CameraParamListImpl ob_camera_param_list¶
-
typedef struct SensorImpl ob_sensor¶
-
typedef struct SensorListImpl ob_sensor_list¶
-
typedef struct StreamProfileImpl ob_stream_profile¶
-
typedef struct StreamProfileListImpl ob_stream_profile_list¶
-
typedef struct CFrameImpl ob_frame¶
-
typedef struct FilterImpl ob_filter¶
-
typedef struct PipelineImpl ob_pipeline¶
-
typedef struct ConfigImpl ob_config¶
-
typedef struct RecorderImpl ob_recorder¶
-
typedef struct PlaybackImpl ob_playback¶
-
typedef struct OBDepthWorkModeListImpl ob_depth_work_mode_list¶
-
typedef enum OBHPStatusCode ob_hp_status_code¶
-
typedef enum OBPermissionType ob_permission_type¶
-
typedef enum OBLogSeverity ob_log_severity¶
-
typedef enum OBLogSeverity DEVICE_LOG_SEVERITY_LEVEL¶
-
typedef enum OBLogSeverity OBDeviceLogSeverityLevel¶
-
typedef enum OBLogSeverity ob_device_log_severity_level¶
-
typedef enum OBExceptionType ob_exception_type¶
-
typedef struct ob_error ob_error
The error class exposed by the SDK, users can get detailed error information according to the error.
-
typedef enum OBSensorType ob_sensor_type¶
-
typedef enum OBStreamType ob_stream_type¶
-
typedef enum OBFrameType ob_frame_type¶
-
typedef enum OBUpgradeState ob_upgrade_state¶
-
typedef enum OBFileTranState ob_file_tran_state¶
-
typedef enum OBDataTranState ob_data_tran_state¶
-
typedef struct OBDataChunk ob_data_chunk¶
-
typedef struct OBIntPropertyRange ob_int_property_range¶
-
typedef struct OBFloatPropertyRange ob_float_property_range¶
-
typedef struct OBBoolPropertyRange ob_bool_property_range¶
-
typedef struct OBCameraIntrinsic ob_camera_intrinsic¶
-
typedef struct OBCameraDistortion ob_camera_distortion¶
-
typedef struct OBD2CTransform ob_d2c_transform¶
-
typedef struct OBCameraParam ob_camera_param¶
-
typedef struct OBCameraParam_V0 ob_camera_param_v0¶
-
typedef struct ob_margin_filter_config OBMarginFilterConfig¶
-
typedef enum OBAlignMode ob_align_mode¶
-
typedef enum OBConvertFormat ob_convert_format¶
-
typedef enum OBGyroSampleRate ob_gyro_sample_rate¶
-
typedef enum OBGyroSampleRate OBAccelSampleRate¶
-
typedef enum OBGyroSampleRate ob_accel_sample_rate¶
-
typedef enum OBGyroSampleRate OB_SAMPLE_RATE¶
-
typedef enum OBGyroFullScaleRange ob_gyro_full_scale_range¶
-
typedef enum OBGyroFullScaleRange OB_GYRO_FULL_SCALE_RANGE¶
-
typedef enum OBAccelFullScaleRange ob_accel_full_scale_range¶
-
typedef enum OBAccelFullScaleRange OB_ACCEL_FULL_SCALE_RANGE¶
-
typedef struct OBAccelValue OBGyroValue¶
-
typedef struct OBAccelValue ob_accel_value¶
-
typedef struct OBAccelValue ob_gyro_value¶
-
typedef uint64_t OBDeviceState¶
Device state.
-
typedef uint64_t ob_device_state¶
-
typedef struct OBDeviceTemperature ob_device_temperature¶
-
typedef struct OBDeviceTemperature DEVICE_TEMPERATURE¶
-
typedef enum OBDepthCroppingMode ob_depth_cropping_mode¶
-
typedef enum OBDepthCroppingMode OB_DEPTH_CROPPING_MODE¶
-
typedef enum OBDeviceType ob_device_type¶
-
typedef enum OBDeviceType OB_DEVICE_TYPE¶
-
typedef enum OBMediaType ob_media_type¶
-
typedef enum OBMediaType OB_MEDIA_TYPE¶
-
typedef enum OBMediaState ob_media_state¶
-
typedef enum OBMediaState OB_MEDIA_STATE_EM¶
-
typedef enum OBDepthPrecisionLevel ob_depth_precision_level¶
-
typedef enum OBDepthPrecisionLevel OB_DEPTH_PRECISION_LEVEL¶
-
typedef enum OBTofFilterRange ob_tof_filter_range¶
-
typedef enum OBTofFilterRange TOF_FILTER_RANGE¶
-
typedef struct OBColorPoint ob_color_point¶
-
typedef enum OBCompressionMode ob_compression_mode¶
-
typedef enum OBCompressionMode OB_COMPRESSION_MODE¶
-
typedef struct OBCompressionParams ob_compression_params¶
-
typedef struct OBCompressionParams OB_COMPRESSION_PARAMS¶
-
typedef struct OBTofExposureThresholdControl ob_tof_exposure_threshold_control¶
-
typedef struct OBTofExposureThresholdControl TOF_EXPOSURE_THRESHOLD_CONTROL¶
-
typedef enum OBSyncMode ob_sync_mode¶
-
typedef enum OBSyncMode OB_SYNC_MODE¶
-
typedef struct OBDeviceSyncConfig ob_device_sync_config¶
-
typedef struct OBDeviceSyncConfig OB_DEVICE_SYNC_CONFIG¶
-
typedef struct OBDepthWorkMode ob_depth_work_mode¶
-
typedef struct OBProtocolVersion ob_protocol_version¶
-
typedef enum OB_CMD_VERSION OBCmdVersion¶
-
typedef enum OB_CMD_VERSION ob_cmd_version¶
-
typedef struct OBDataBundle OBDataBundle
Internal API for future publication.
C language: data’s type is a uint8_t pointer, and the user parses data to the destination type. itemTypeSize == 1, dataSize == itemCount;
C++: data’s type is the propertyId and OBCmdVersion’s data type. itemTypeSize = sizeof(T), itemCount = dataSize / itemTypeSize;
Note
This data type matches OBCmdVersion of one propertyId. PropertyId has multiple OBCmdVersion, and different OBCmdVersion of this propertyId has different data types. PropertyId and OBCmdVersion match only one data type. itemCount is the number of data types contained in data bytes. C language and C++ have differences.
-
typedef struct OBDataBundle ob_data_bundle¶
-
typedef struct OBNetIpConfig ob_net_ip_config¶
-
typedef struct OBNetIpConfig DEVICE_IP_ADDR_CONFIG¶
-
typedef enum OBCommunicationType ob_communication_type¶
-
typedef enum OBCommunicationType OB_COMMUNICATION_TYPE¶
-
typedef enum OBUSBPowerState ob_usb_power_state¶
-
typedef enum OBDCPowerState ob_dc_power_state¶
-
typedef enum ob_rotate_degree_type OBRotateDegreeType¶
-
typedef enum ob_power_line_freq_mode OBPowerLineFreqMode¶
-
typedef enum OB_FRAME_AGGREGATE_OUTPUT_MODE OBFrameAggregateOutputMode¶
-
typedef enum OB_FRAME_AGGREGATE_OUTPUT_MODE ob_frame_aggregate_output_mode¶
-
typedef enum OB_COORDINATE_SYSTEM_TYPE OBCoordinateSystemType¶
-
typedef enum OB_COORDINATE_SYSTEM_TYPE ob_coordinate_system_type¶
-
typedef enum OB_DEVICE_DEVELOPMENT_MODE OBDeviceDevelopmentMode¶
-
typedef enum OB_DEVICE_DEVELOPMENT_MODE ob_device_development_mode¶
-
typedef enum ob_multi_device_sync_mode OBMultiDeviceSyncMode¶
-
typedef struct ob_multi_device_sync_config OBMultiDeviceSyncConfig¶
-
typedef struct ob_device_timestamp_reset_config OBDeviceTimestampResetConfig¶
-
typedef void (*ob_file_send_callback)(ob_file_tran_state state, const char *message, uint8_t percent, void *user_data)¶
Callback for file transfer.
- Param state
Transmission status
- Param message
Transfer status information
- Param percent
Transfer progress percentage
- Param user_data
User-defined data
-
typedef void (*ob_device_upgrade_callback)(ob_upgrade_state state, const char *message, uint8_t percent, void *user_data)¶
Callback for firmware upgrade.
- Param state
Upgrade status
- Param message
Upgrade status information
- Param percent
Upgrade progress percentage
- Param user_data
User-defined data
-
typedef void (*ob_device_state_callback)(ob_device_state state, const char *message, void *user_data)¶
Callback for device status.
- Param state
Device status
- Param message
Device status information
- Param user_data
User-defined data
-
typedef void (*ob_set_data_callback)(ob_data_tran_state state, uint8_t percent, void *user_data)¶
Callback for writing data.
- Param state
Write data status
- Param percent
Write data percentage
- Param user_data
User-defined data
-
typedef void (*ob_get_data_callback)(ob_data_tran_state state, ob_data_chunk *dataChunk, void *user_data)¶
Callback for reading data.
- Param state
Read data status
- Param dataChunk
Read the returned data block
- Param user_data
User-defined data
-
typedef void (*ob_media_state_callback)(ob_media_state state, void *user_data)¶
Callback for media status (recording and playback)
- Param state
Condition
- Param user_data
User-defined data
-
typedef void (*ob_device_changed_callback)(ob_device_list *removed, ob_device_list *added, void *user_data)¶
Callback for device change.
- Param removed
List of deleted (dropped) devices
- Param added
List of added (online) devices
- Param user_data
User-defined data
-
typedef void (*ob_frame_callback)(ob_frame *frame, void *user_data)¶
Callback for frame.
- Param frame
Frame object
- Param user_data
User-defined data
-
typedef void (*ob_frameset_callback)(ob_frame *frameset, void *user_data)¶
Callback for frameset.
- Param frameset
Frameset object
- Param user_data
User-defined data
- void() ob_frame_destroy_callback (void *buffer, void *user_data)
Customize the delete callback.
- Param buffer
Data that needs to be deleted
- Param user_data
User-defined data
- void() ob_log_callback (ob_log_severity severity, const char *message, void *user_data)
Callback for receiving log.
- Param severity
Current log level
- Param message
Log message
- Param user_data
User-defined data
- void() ob_get_imu_data_callback (const uint8_t *data, uint32_t dataLen)
-
typedef enum OBPropertyID ob_property_id¶
-
typedef enum OBPropertyType OBPropertyType
The data type used to describe all property settings.
-
typedef enum OBPropertyType ob_property_type¶
-
typedef struct OBPropertyItem OBPropertyItem
Used to describe the characteristics of each property.
-
typedef struct OBPropertyItem ob_property_item¶
函数¶
-
ob_context *ob_create_context(ob_error **error)¶
Create a context object.
- Parameters
error – [out] Pointer to an error object that will be populated if an error occurs during context creation
- Returns
Pointer to the created context object
-
ob_context *ob_create_context_with_config(const char *config_path, ob_error **error)¶
Create a context object with a specified configuration file.
- Parameters
config_path – [in] Path to the configuration file. If NULL, the default configuration file will be used.
error – [out] Pointer to an error object that will be populated if an error occurs during context creation
- Returns
Pointer to the created context object
-
void ob_delete_context(ob_context *context, ob_error **error)¶
Delete a context object.
- Parameters
context – [in] Pointer to the context object to be deleted
error – [out] Pointer to an error object that will be populated if an error occurs during context deletion
-
ob_device_list *ob_query_device_list(ob_context *context, ob_error **error)¶
Get a list of enumerated devices.
- Parameters
context – [in] Pointer to the context object
error – [out] Pointer to an error object that will be populated if an error occurs during device enumeration
- Returns
Pointer to the device list object
-
void ob_enable_net_device_enumeration(ob_context *context, bool enable, ob_error **error)¶
Enable or disable network device enumeration.
After enabling, the network device will be automatically discovered and can be retrieved through ob_query_device_list. The default state can be set in the configuration file.
- Attention
Network device enumeration is performed through the GVCP protocol. If the device is not in the same subnet as the host, it will be discovered but cannot be connected.
- Parameters
context – [in] Pointer to the context object
enable – [in] true to enable, false to disable
error – [out] Pointer to an error object that will be populated if an error occurs.
-
ob_device *ob_create_net_device(ob_context *context, const char *address, uint16_t port, ob_error **error)¶
Create a network device object.
- Parameters
context – [in] Pointer to the context object
address – [in] IP address of the device
port – [in] Port number of the device
error – [out] Pointer to an error object that will be populated if an error occurs during device creation
- Returns
Pointer to the created device object
-
void ob_set_device_changed_callback(ob_context *context, ob_device_changed_callback callback, void *user_data, ob_error **error)¶
Set a device plug-in callback function.
- Attention
The added and removed device lists returned through the callback interface need to be released manually
- Parameters
context – [in] Pointer to the context object
callback – [in] Pointer to the callback function triggered when a device is plugged or unplugged
user_data – [in] Pointer to user data that can be passed to and retrieved from the callback function
error – [out] Pointer to an error object that will be populated if an error occurs during callback function setting
-
void ob_enable_device_clock_sync(ob_context *context, uint64_t repeatInterval, ob_error **error)¶
Activates device clock synchronization to synchronize the clock of the host and all created devices (if supported).
- Parameters
context – [in] Pointer to the context object
repeatInterval – [in] The interval for auto-repeated synchronization, in milliseconds. If the value is 0, synchronization is performed only once.
error – [out] Pointer to an error object that will be populated if an error occurs during execution
-
void ob_free_idle_memory(ob_context *context, ob_error **error)¶
Free idle memory from the internal frame memory pool.
- Parameters
context – [in] Pointer to the context object
error – [out] Pointer to an error object that will be populated if an error occurs during memory freeing
-
void ob_set_logger_severity(ob_log_severity severity, ob_error **error)¶
Set the global log level.
- Attention
This interface setting will affect the output level of all logs (terminal, file, callback)
- Parameters
severity – [in] Log level to set
error – [out] Pointer to an error object that will be populated if an error occurs during log level setting
-
void ob_set_logger_to_file(ob_log_severity severity, const char *directory, ob_error **error)¶
Set the log output to a file.
- Parameters
severity – [in] Log level to output to file
directory – [in] Path to the log file output directory. If the path is empty, the existing settings will continue to be used (if the existing configuration is also empty, the log will not be output to the file)
error – [out] Pointer to an error object that will be populated if an error occurs during log output setting
-
void ob_set_logger_callback(ob_log_severity severity, ob_log_callback callback, void *user_data, ob_error **error)¶
Set the log callback function.
- Parameters
severity – [in] Log level to set for the callback function
callback – [in] Pointer to the callback function
user_data – [in] Pointer to user data that can be passed to and retrieved from the callback function
error – [out] Pointer to an error object that will be populated if an error occurs during log callback function setting
-
void ob_set_logger_to_console(ob_log_severity severity, ob_error **error)¶
Set the log output to the console.
- Parameters
severity – [in] Log level to output to the console
error – [out] Pointer to an error object that will be populated if an error occurs during log output setting
-
void ob_load_license(const char *filePath, const char *key, ob_error **error)¶
Load a license file.
- Parameters
filePath – [in] Path to the license file
key – [in] Decryption key. “OB_DEFAULT_DECRYPT_KEY” can be used to represent the default key.
error – [out] Pointer to an error object that will be populated if an error occurs during license loading
-
void ob_load_license_from_data(const char *data, uint32_t dataLen, const char *key, ob_error **error)¶
Load a license from data.
- Parameters
data – [in] Pointer to the license data
dataLen – [in] Length of the license data
key – [in] Decryption key. “OB_DEFAULT_DECRYPT_KEY” can be used to represent the default key.
error – [out] Pointer to an error object that will be populated if an error occurs during license loading
-
uint32_t ob_device_list_device_count(ob_device_list *list, ob_error **error)¶
Get the number of devices.
- Parameters
list – [in] Device list object
error – [out] Log error messages
- Returns
uint32_t return the number of devices
-
const char *ob_device_list_get_device_name(ob_device_list *list, uint32_t index, ob_error **error)¶
Get device name (DEPRECATED)
- Parameters
list – [in] Device list object
index – [in] Device index
error – [out] Log error messages
- Returns
const char* return device name
-
int ob_device_list_get_device_pid(ob_device_list *list, uint32_t index, ob_error **error)¶
Get the pid of the specified device.
- Parameters
list – [in] Device list object
index – [in] Device index
error – [out] Log error messages
- Returns
int return the device pid
-
int ob_device_list_get_device_vid(ob_device_list *list, uint32_t index, ob_error **error)¶
Get the vid of the specified device.
- Parameters
list – [in] Device list object
index – [in] Device index
error – [out] Log error messages
- Returns
int return device vid
-
const char *ob_device_list_get_device_uid(ob_device_list *list, uint32_t index, ob_error **error)¶
Get the uid of the specified device.
- Parameters
list – [in] Device list object
index – [in] Device index
error – [out] Log error messages
- Returns
const char* return the device uid
-
const char *ob_device_list_get_device_serial_number(ob_device_list *list, uint32_t index, ob_error **error)¶
Get the serial number of the specified device.
- Parameters
list – [in] Device list object.
index – [in] Device index.
error – [out] Log error messages.
- Returns
const char* The device UID.
-
const char *ob_device_list_get_device_connection_type(ob_device_list *list, uint32_t index, ob_error **error)¶
Get device connection type.
- Parameters
list – [in] Device list object
index – [in] Device index
error – [out] Log error messages
- Returns
const char* returns the device connection type,currently supports:”USB”, “USB1.0”, “USB1.1”, “USB2.0”, “USB2.1”, “USB3.0”, “USB3.1”, “USB3.2”, “Ethernet”
-
const char *ob_device_list_get_device_ip_address(ob_device_list *list, uint32_t index, ob_error **error)¶
Get device ip address.
- Attention
Only valid for network devices, otherwise it will return “0.0.0.0”.
- Parameters
list – Device list object
index – Device index
error – Log error messages
- Returns
const char* returns the device ip address,such as “192.168.1.10”
-
ob_device *ob_device_list_get_device(ob_device_list *list, uint32_t index, ob_error **error)¶
Create a device.
- Attention
If the device has already been acquired and created elsewhere, repeated acquisitions will return an error.
- Parameters
list – [in] Device list object.
index – [in] The index of the device to create.
error – [out] Log error messages.
- Returns
ob_device* The created device.
-
ob_device *ob_device_list_get_device_by_serial_number(ob_device_list *list, const char *serial_number, ob_error **error)¶
Create a device.
- Attention
If the device has already been acquired and created elsewhere, repeated acquisitions will return an error.
- Parameters
list – [in] Device list object.
serial_number – [in] The serial number of the device to create.
error – [out] Log error messages.
- Returns
ob_device* The created device.
-
ob_device *ob_device_list_get_device_by_uid(ob_device_list *list, const char *uid, ob_error **error)¶
Create device by uid.
On Linux platform, the uid of the device is composed of bus-port-dev, for example 1-1.2-1. But the SDK will remove the dev number and only keep the bus-port as the uid to create the device, for example 1-1.2, so that we can create a device connected to the specified USB port. Similarly, users can also directly pass in bus-port as uid to create device.
- Attention
If the device has already been acquired and created elsewhere, repeated acquisitions will return an error.
- Parameters
list – [in] Device list object.
uid – [in] The UID of the device to create.
error – [out] Log error messages.
- Returns
ob_device* The created device.
-
void ob_delete_device(ob_device *device, ob_error **error)¶
Delete a device.
- Parameters
device – [in] The device to be deleted.
error – [out] Log error messages.
-
void ob_delete_device_info(ob_device_info *info, ob_error **error)¶
Delete device information.
- Parameters
info – [in] The device information to be deleted.
error – [out] Log error messages.
-
void ob_delete_device_list(ob_device_list *list, ob_error **error)¶
Delete a device list.
- Parameters
list – [in] The device list object to be deleted.
error – [out] Log error messages.
-
ob_device_info *ob_device_get_device_info(ob_device *device, ob_error **error)¶
Get device information.
- Parameters
device – [in] The device to obtain information from.
error – [out] Log error messages.
- Returns
ob_device_info* The device information.
-
ob_sensor_list *ob_device_get_sensor_list(ob_device *device, ob_error **error)¶
List all sensors.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
ob_sensor_list* The list of all sensors.
-
ob_sensor *ob_device_get_sensor(ob_device *device, ob_sensor_type type, ob_error **error)¶
Get a device’s sensor.
- Parameters
device – [in] The device object.
type – [in] The type of sensor to get.
error – [out] Log error messages.
- Returns
ob_sensor* The acquired sensor.
-
void ob_device_set_int_property(ob_device *device, ob_property_id property_id, int32_t property, ob_error **error)¶
Set an integer type of device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property to be set.
property – [in] The property value to be set.
error – [out] Log error messages.
-
int32_t ob_device_get_int_property(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get an integer type of device property.
- Parameters
device – [in] The device object.
property_id – [in] The property ID.
error – [out] Log error messages.
- Returns
int32_t The property value.
-
void ob_device_set_float_property(ob_device *device, ob_property_id property_id, float property, ob_error **error)¶
Set a float type of device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property to be set.
property – [in] The property value to be set.
error – [out] Log error messages.
-
float ob_device_get_float_property(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get a float type of device property.
- Parameters
device – [in] The device object.
property_id – [in] The property ID.
error – [out] Log error messages.
- Returns
float The property value.
-
void ob_device_set_bool_property(ob_device *device, ob_property_id property_id, bool property, ob_error **error)¶
Set a boolean type of device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property to be set.
property – [in] The property value to be set.
error – [out] Log error messages.
-
bool ob_device_get_bool_property(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get a boolean type of device property.
- Parameters
device – [in] The device object.
property_id – [in] The property ID.
error – [out] Log error messages.
- Returns
bool The property value.
-
void ob_device_set_structured_data(ob_device *device, ob_property_id property_id, const void *data, uint32_t data_size, ob_error **error)¶
Set structured data.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property to be set.
data – [in] The property data to be set.
data_size – [in] The size of the property to be set.
error – [out] Log error messages.
-
void ob_device_get_structured_data(ob_device *device, ob_property_id property_id, void *data, uint32_t *data_size, ob_error **error)¶
Get structured data of a device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property.
data – [out] The obtained property data.
data_size – [out] The size of the obtained property data.
error – [out] Log error messages.
-
void ob_device_set_structured_data_ext(ob_device *device, ob_property_id property_id, ob_data_bundle *data_bundle, ob_set_data_callback cb, void *user_data, ob_error **error)¶
Set structured data of a device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property.
data_bundle – [in] The target data to set.
cb – [in] The data callback.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
ob_data_bundle *ob_device_get_structured_data_ext(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get structured data of a device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property.
error – [out] Log error messages.
- Returns
ob_data_bundle. NOTE: ob_data_bundle must be freed by ob_delete_data_bundle() because it comes from OrbbecSDK’s API.
-
void ob_device_set_raw_data(ob_device *device, ob_property_id property_id, void *data, uint32_t data_size, ob_set_data_callback cb, bool async, void *user_data, ob_error **error)¶
Set raw data of a device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property to be set.
data – [in] The property data to be set.
data_size – [in] The size of the property data to be set.
cb – [in] The set data callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
void ob_device_get_raw_data(ob_device *device, ob_property_id property_id, ob_get_data_callback cb, bool async, void *user_data, ob_error **error)¶
Get raw data of a device property.
- Parameters
device – [in] The device object.
property_id – [in] The ID of the property.
cb – [in] The get data callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
ob_protocol_version ob_device_get_protocol_version(ob_device *device, ob_error **error)¶
Get the protocol version of the device.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
The protocol version of the device.
-
ob_cmd_version ob_device_get_cmd_version(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get the cmdVersion of a property.
- Parameters
device – [in] The device object.
property_id – [in] The property id.
error – [out] Log error messages.
- Returns
The cmdVersion of the property.
-
uint32_t ob_device_get_supported_property_count(ob_device *device, ob_error **error)¶
Get the number of properties supported by the device.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
The number of properties supported by the device.
-
ob_property_item ob_device_get_supported_property(ob_device *device, uint32_t index, ob_error **error)¶
Get the type of property supported by the device.
- Parameters
device – [in] The device object.
index – [in] The property index.
error – [out] Log error messages.
- Returns
The type of property supported by the device.
-
bool ob_device_is_property_supported(ob_device *device, ob_property_id property_id, ob_permission_type permission, ob_error **error)¶
Check if a device property permission is supported.
- Parameters
device – [in] The device object.
property_id – [in] The property id.
permission – [in] The type of permission that needs to be interpreted.
error – [out] Log error messages.
- Returns
Whether the property permission is supported.
-
ob_int_property_range ob_device_get_int_property_range(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get the integer type of device property range.
- Parameters
device – [in] The device object.
property_id – [in] The property id.
error – [out] Log error messages.
- Returns
The property range.
-
ob_float_property_range ob_device_get_float_property_range(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get the float type of device property range.
- Parameters
device – [in] The device object.
property_id – [in] The property id.
error – [out] Log error messages.
- Returns
The property range.
-
ob_bool_property_range ob_device_get_bool_property_range(ob_device *device, ob_property_id property_id, ob_error **error)¶
Get the boolean type of device property range.
- Parameters
device – [in] The device object.
property_id – [in] The property id.
error – [out] Log error messages.
- Returns
The property range.
-
void ob_device_write_ahb(ob_device *device, uint32_t reg, uint32_t mask, uint32_t value, ob_error **error)¶
Write to an AHB register.
- Parameters
device – [in] The device object.
reg – The register to be written.
mask – The mask.
value – The value to be written.
error – [out] Log error messages.
-
void ob_device_read_ahb(ob_device *device, uint32_t reg, uint32_t mask, uint32_t *value, ob_error **error)¶
Read an AHB register.
- Parameters
device – [in] The device object.
reg – The register to be read.
mask – The mask.
value – The value to be read.
error – [out] Log error messages.
-
void ob_device_write_i2c(ob_device *device, uint32_t module_id, uint32_t reg, uint32_t mask, uint32_t value, ob_error **error)¶
Write to an I2C register.
- Parameters
device – [in] The device object.
module_id – The I2C module id to be written.
reg – The register to be written.
mask – The mask.
value – The value to be written.
error – [out] Log error messages.
-
void ob_device_read_i2c(ob_device *device, uint32_t module_id, uint32_t reg, uint32_t mask, uint32_t *value, ob_error **error)¶
Read an I2C register.
- Parameters
device – [in] The device object.
module_id – The id of the I2C module to be read.
reg – The register to be read.
mask – The mask.
value – The value to be read.
error – [out] Log error messages.
-
void ob_device_write_flash(ob_device *device, uint32_t offset, const void *data, uint32_t data_size, ob_set_data_callback cb, bool async, void *user_data, ob_error **error)¶
Set the properties of writing to Flash [Asynchronous Callback].
- Parameters
device – [in] The device object.
offset – The flash offset address.
data – The property data to be written.
data_size – The size of the property to be written.
cb – The set data callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
void ob_device_read_flash(ob_device *device, uint32_t offset, uint32_t data_size, ob_get_data_callback cb, bool async, void *user_data, ob_error **error)¶
Read Flash properties [asynchronous callback].
- Parameters
device – [in] The device object.
offset – The flash offset address.
data_size – The size of the data to be read.
cb – The read flash data and progress callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
void ob_device_write_customer_data(ob_device *device, const void *data, uint32_t data_size, ob_error **error)¶
Set customer data.
- Parameters
device – [in] The device object.
data – [in] The property data to be set.
data_size – [in] The size of the property to be set,the maximum length cannot exceed 65532 bytes.
error – [out] Log error messages.
-
void ob_device_read_customer_data(ob_device *device, void *data, uint32_t *data_size, ob_error **error)¶
Get customer data of a device property.
- Parameters
device – [in] The device object.
data – [out] The obtained property data.
data_size – [out] The size of the obtained property data.
error – [out] Log error messages.
-
void ob_device_upgrade(ob_device *device, const char *path, ob_device_upgrade_callback callback, bool async, void *user_data, ob_error **error)¶
Upgrade the device firmware.
- Parameters
device – [in] The device object.
path – [in] The firmware path.
callback – [in] The firmware upgrade progress callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
void ob_device_upgrade_from_data(ob_device *device, const char *file_data, uint32_t file_size, ob_device_upgrade_callback callback, bool async, void *user_data, ob_error **error)¶
Upgrade the device firmware.
- Parameters
device – [in] The device object.
file_data – [in] The firmware file data.
file_size – [in] The firmware file size.
callback – [in] The firmware upgrade progress callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
ob_device_state ob_device_get_device_state(ob_device *device, ob_error **error)¶
Get the current device status.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
ob_device_state The device state information.
-
void ob_device_state_changed(ob_device *device, ob_device_state_callback callback, void *user_data, ob_error **error)¶
Monitor device state changes.
- Parameters
device – [in] The device object.
callback – [in] The callback function to be called when the device status changes.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
void ob_device_send_file_to_destination(ob_device *device, const char *file_path, const char *dst_path, ob_file_send_callback callback, bool async, void *user_data, ob_error **error)¶
Send files to the specified path on the device.
- Parameters
device – [in] The device object.
file_path – [in] The source file path.
dst_path – [in] The destination path on the device.
callback – [in] The file sending progress callback.
async – [in] Whether to execute asynchronously.
user_data – [in] User-defined data that will be returned in the callback.
error – [out] Log error messages.
-
bool ob_device_activate_authorization(ob_device *device, const char *auth_code, ob_error **error)¶
Verify the device authorization code.
- Parameters
device – [in] The device object.
auth_code – [in] The authorization code.
error – [out] Log error messages.
- Returns
bool Whether the activation is successful.
-
void ob_device_write_authorization_code(ob_device *device, const char *auth_code, ob_error **error)¶
Write the device authorization code.
- Parameters
device – [in] The device object.
auth_code – [in] The authorization code.
error – [out] Log error messages.
-
ob_camera_param_list *ob_device_get_calibration_camera_param_list(ob_device *device, ob_error **error)¶
Get the original parameter list of camera calibration saved on the device.
- Attention
The parameters in the list do not correspond to the current open-stream configuration.You need to select the parameters according to the actual situation, and may need to do scaling, mirroring and other processing. Non-professional users are recommended to use the ob_pipeline_get_camera_param() interface.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
ob_camera_param_list The camera parameter list.
-
ob_depth_work_mode ob_device_get_current_depth_work_mode(ob_device *device, ob_error **error)¶
Get the current depth work mode.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
ob_depth_work_mode The current depth work mode.
-
ob_status ob_device_switch_depth_work_mode(ob_device *device, const ob_depth_work_mode *work_mode, ob_error **error)¶
Switch the depth work mode by ob_depth_work_mode. Prefer to use ob_device_switch_depth_work_mode_by_name to switch depth mode when the complete name of the depth work mode is known.
- Parameters
device – [in] The device object.
work_mode – [in] The depth work mode from ob_depth_work_mode_list which is returned by ob_device_get_depth_work_mode_list.
error – [out] Log error messages.
- Returns
ob_status The switch result. OB_STATUS_OK: success, other failed.
-
ob_status ob_device_switch_depth_work_mode_by_name(ob_device *device, const char *mode_name, ob_error **error)¶
Switch the depth work mode by work mode name.
- Parameters
device – [in] The device object.
mode_name – [in] The depth work mode name which is equal to ob_depth_work_mode.name.
error – [out] Log error messages.
- Returns
ob_status The switch result. OB_STATUS_OK: success, other failed.
-
ob_depth_work_mode_list *ob_device_get_depth_work_mode_list(ob_device *device, ob_error **error)¶
Request the list of supported depth work modes.
- Parameters
device – [in] The device object.
error – [out] Log error messages.
- Returns
ob_depth_work_mode_list The list of ob_depth_work_mode.
-
void ob_device_reboot(ob_device *device, ob_error **error)¶
Device reboot.
- Attention
The device will be disconnected and reconnected. After the device is disconnected, the interface access to the device handle may be abnormal. Please use the ob_delete_device interface to delete the handle directly. After the device is reconnected, it can be obtained again.
- Parameters
device – [in] Device object
error – [out] Log error messages
-
ob_device_sync_config ob_device_get_sync_config(ob_device *device, ob_error **error)¶
Get the current device synchronization configuration.
Device synchronization: including exposure synchronization function and multi-camera synchronization function of different sensors within a single machine
- Parameters
device – [in] Device object
error – [out] Log error messages
- Returns
ob_device_sync_config Return the device synchronization configuration
-
void ob_device_set_sync_config(ob_device *device, ob_device_sync_config device_sync_config, ob_error **error)¶
Set the device synchronization configuration.
Used to configure the exposure synchronization function and multi-camera synchronization function of different sensors in a single machine
- Attention
Calling this function will directly write the configuration to the device Flash, and it will still take effect after the device restarts. To avoid affecting the Flash lifespan, do not update the configuration frequently.
- Parameters
device – [in] Device object
device_sync_config – [out] Device synchronization configuration
error – [out] Log error messages
-
const char *ob_device_info_name(ob_device_info *info, ob_error **error)¶
Get device name.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* return the device name
-
int ob_device_info_pid(ob_device_info *info, ob_error **error)¶
Get device pid.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
int return the device pid
-
int ob_device_info_vid(ob_device_info *info, ob_error **error)¶
Get device vid.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
int return device vid
-
const char *ob_device_info_uid(ob_device_info *info, ob_error **error)¶
Get device uid.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* return device uid
-
const char *ob_device_info_serial_number(ob_device_info *info, ob_error **error)¶
Get device serial number.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* return device serial number
-
const char *ob_device_info_firmware_version(ob_device_info *info, ob_error **error)¶
Get the firmware version number.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
int return the firmware version number
-
const char *ob_device_info_usb_type(ob_device_info *info, ob_error **error)¶
Get the USB connection type (DEPRECATED)
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* The USB connection type
-
const char *ob_device_info_connection_type(ob_device_info *info, ob_error **error)¶
Get the device connection type.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* The connection type,currently supports:”USB”, “USB1.0”, “USB1.1”, “USB2.0”, “USB2.1”, “USB3.0”, “USB3.1”, “USB3.2”, “Ethernet”
-
const char *ob_device_info_ip_address(ob_device_info *info, ob_error **error)¶
Get the device IP address.
- Attention
Only valid for network devices, otherwise it will return “0.0.0.0”
- Parameters
info – Device Information
error – Log error messages
- Returns
const char* The IP address,such as “192.168.1.10”
-
const char *ob_device_info_hardware_version(ob_device_info *info, ob_error **error)¶
Get the hardware version number.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* The hardware version number
-
const char *ob_device_info_supported_min_sdk_version(ob_device_info *info, ob_error **error)¶
Get the minimum SDK version number supported by the device.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* The minimum SDK version number supported by the device
-
const char *ob_device_info_asicName(ob_device_info *info, ob_error **error)¶
Get the chip name.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
const char* The ASIC name
-
ob_device_type ob_device_info_device_type(ob_device_info *info, ob_error **error)¶
Get the device type.
- Parameters
info – [in] Device Information
error – [out] Log error messages
- Returns
ob_device_type The device type
-
uint32_t ob_camera_param_list_count(ob_camera_param_list *param_list, ob_error **error)¶
Get the number of camera parameter lists.
- Parameters
param_list – Camera parameter list
error – Log error messages
- Returns
uint32_t The number of lists
-
ob_camera_param ob_camera_param_list_get_param(ob_camera_param_list *param_list, uint32_t index, ob_error **error)¶
Get camera parameters from the camera parameter list.
- Parameters
param_list – Camera parameter list
index – Parameter index
error – Log error messages
- Returns
ob_camera_param The camera parameters. Since it returns the structure object directly, there is no need to provide a delete interface.
-
void ob_delete_camera_param_list(ob_camera_param_list *param_list, ob_error **error)¶
Delete the camera parameter list.
- Parameters
param_list – Camera parameter list
error – Log error messages
-
uint32_t ob_depth_work_mode_list_count(ob_depth_work_mode_list *work_mode_list, ob_error **error)¶
Get the depth work mode count that ob_depth_work_mode_list hold.
-
ob_depth_work_mode ob_depth_work_mode_list_get_item(ob_depth_work_mode_list *work_mode_list, uint32_t index, ob_error **error)¶
Get the index target of ob_depth_work_mode from work_mode_list.
- Parameters
work_mode_list – [in] Data structure containing a list of ob_depth_work_mode
index – [in] Index of the target ob_depth_work_mode
error – [out] Log error messages
- Returns
ob_depth_work_mode
-
void ob_delete_depth_work_mode_list(ob_depth_work_mode_list *work_mode_list, ob_error **error)¶
Free the resources of ob_depth_work_mode_list.
- Parameters
work_mode_list – [in] Data structure containing a list of ob_depth_work_mode
error – [out] Log error messages
-
void ob_delete_data_bundle(ob_data_bundle *data_bundle, ob_error **error)¶
Free the resources of data_bundle which come from OrbbecSDK’s API.
- Parameters
data_bundle – Data bundle
error – [out] Log error messages
-
ob_status ob_error_status(ob_error *error)¶
Get the error status.
- Parameters
error – [in] The error object.
- Returns
The error status.
-
const char *ob_error_message(ob_error *error)¶
Get the error message.
- Parameters
error – [in] The error object.
- Returns
The error message.
-
const char *ob_error_function(ob_error *error)¶
Get the name of the API function that caused the error.
- Parameters
error – [in] The error object.
- Returns
The name of the API function.
-
const char *ob_error_args(ob_error *error)¶
Get the error parameters.
- Parameters
error – [in] The error object.
- Returns
The error parameters.
-
ob_exception_type ob_error_exception_type(ob_error *error)¶
Get the type of exception that caused the error.
- Parameters
error – [in] The error object.
- Returns
The type of exception.
-
void ob_delete_error(ob_error *error)¶
Delete the error object.
- Parameters
error – [in] The error object to delete.
-
ob_filter *ob_create_pointcloud_filter(ob_error **error)¶
Create a PointCloud Filter.
- Parameters
error – [out] Log error messages.
- Returns
A pointcloud_filter object.
-
void ob_pointcloud_filter_set_camera_param(ob_filter *filter, ob_camera_param param, ob_error **error)¶
Set the camera parameters for the PointCloud Filter.
- Parameters
filter – [in] A pointcloud_filter object.
param – [in] Camera parameters.
error – [out] Log error messages.
-
void ob_pointcloud_filter_set_point_format(ob_filter *filter, ob_format type, ob_error **error)¶
Set the point cloud type parameters for the PointCloud Filter.
- Parameters
filter – [in] A pointcloud_filter object.
type – [in] Point cloud type: depth point cloud or RGBD point cloud.
error – [out] Log error messages.
-
void ob_pointcloud_filter_set_frame_align_state(ob_filter *filter, bool state, ob_error **error)¶
Set the alignment state of the frames that will be input to produce the point cloud.
- Parameters
filter – [in] A pointcloud_filter object.
state – [in] Alignment status, True: aligned; False: unaligned.
error – [out] Log error messages.
-
void ob_pointcloud_filter_set_position_data_scale(ob_filter *filter, float scale, ob_error **error)¶
Set the point cloud data scaling factor.
- Attention
Calling this function to set the scale will change the point coordinate scaling factor of the output point cloud frame: posScale = posScale / scale. The point coordinate scaling factor for the output point cloud frame can be obtained via the ob_points_frame_get_position_value_scale function.
- Parameters
filter – [in] A pointcloud_filter object.
scale – [in] Set the point cloud coordinate data zoom factor.
error – [out] Log error messages.
-
void ob_pointcloud_filter_set_color_data_normalization(ob_filter *filter, bool state, ob_error **error)¶
Set the point cloud color data normalization.
- Parameters
filter – [in] A pointcloud_filter object.
state – [in] Sets whether the point cloud color data is normalized.
error – [out] Log error messages.
-
void ob_pointcloud_filter_set_coordinate_system(ob_filter *filter, ob_coordinate_system_type type, ob_error **error)¶
Set the point cloud coordinate system.
- Parameters
filter – [in] A pointcloud_filter object.
type – [in] Coordinate system type.
error – [out] Log error messages.
-
ob_filter *ob_create_format_convert_filter(ob_error **error)¶
Create a format convert Filter.
- Parameters
error – [out] Log error messages.
- Returns
A format_convert object.
-
void ob_format_convert_filter_set_format(ob_filter *filter, ob_convert_format type, ob_error **error)¶
Set the type of format conversion for the format convert Filter.
- Parameters
filter – [in] A format convert filter object.
type – [in] Format conversion type.
error – [out] Log error messages.
-
ob_filter *ob_create_compression_filter(ob_error **error)¶
Create a compression Filter.
- Parameters
error – [out] Log error messages.
- Returns
A depth_filter object.
-
void ob_compression_filter_set_compression_params(ob_filter *filter, ob_compression_mode mode, void *params, ob_error **error)¶
Set the compression parameters for the compression Filter.
- Parameters
filter – [in] A compression_filter object.
mode – [in] Compression mode OB_COMPRESSION_LOSSLESS or OB_COMPRESSION_LOSSY.
params – [in] Compression params, struct ob_compression_params, when mode is OB_COMPRESSION_LOSSLESS, params is NULL.
error – [out] Log error messages.
-
ob_filter *ob_create_decompression_filter(ob_error **error)¶
Create a decompression Filter.
- Parameters
error – [out] Log error messages.
- Returns
A decompression Filter object.
-
void ob_filter_reset(ob_filter *filter, ob_error **error)¶
Reset the filter, clears the cache, and resets the state. If the asynchronous interface is used, the processing thread will also be stopped and the pending cache frames will be cleared.
- Parameters
filter – [in] A filter object.
error – [out] Log error messages.
-
ob_frame *ob_filter_process(ob_filter *filter, ob_frame *frame, ob_error **error)¶
Process the frame (synchronous interface).
- Parameters
filter – [in] A filter object.
frame – [in] Pointer to the frame object to be processed.
error – [out] Log error messages.
- Returns
The frame object processed by the filter.
-
void ob_filter_set_callback(ob_filter *filter, ob_filter_callback callback, void *user_data, ob_error **error)¶
Set the processing result callback function for the filter (asynchronous callback interface).
- Parameters
filter – [in] A filter object.
callback – [in] Callback function.
user_data – [in] Arbitrary user data pointer can be passed in and returned from the callback.
error – [out] Log error messages.
-
void ob_filter_push_frame(ob_filter *filter, ob_frame *frame, ob_error **error)¶
Push the frame into the pending cache for the filter (asynchronous callback interface).
- Parameters
filter – [in] A filter object.
frame – [in] Pointer to the frame object to be processed.
error – [out] Log error messages.
-
void ob_delete_filter(ob_filter *filter, ob_error **error)¶
Delete the filter.
- Parameters
filter – [in] A filter object.
error – [out] Log error messages.
-
uint64_t ob_frame_index(ob_frame *frame, ob_error **error)¶
Get the frame index.
- Parameters
frame – [in] Frame object
error – [out] Log wrong message
- Returns
uint64_t return the frame index
-
ob_format ob_frame_format(ob_frame *frame, ob_error **error)¶
Get the frame format.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
ob_format return the frame format
-
ob_frame_type ob_frame_get_type(ob_frame *frame, ob_error **error)¶
Get the frame type.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
ob_frame_type return the frame type
-
uint64_t ob_frame_time_stamp(ob_frame *frame, ob_error **error)¶
Get the hardware timestamp of the frame in milliseconds.
The hardware timestamp is the time point when the frame was captured by the device, on device clock domain.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
uint64_t return the frame hardware timestamp in milliseconds
-
uint64_t ob_frame_time_stamp_us(ob_frame *frame, ob_error **error)¶
Get the hardware timestamp of the frame in microseconds.
The hardware timestamp is the time point when the frame was captured by the device, on device clock domain.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
uint64_t return the frame hardware timestamp in microseconds
-
uint64_t ob_frame_system_time_stamp(ob_frame *frame, ob_error **error)¶
Get the system timestamp of the frame in milliseconds.
The system timestamp is the time point when the frame was received by the host, on host clock domain.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
uint64_t return the frame system timestamp in milliseconds
-
void *ob_frame_data(ob_frame *frame, ob_error **error)¶
Get frame data.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
void* * return frame data pointer
-
uint32_t ob_frame_data_size(ob_frame *frame, ob_error **error)¶
Get the frame data size.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
uint32_t return the frame data size If it is point cloud data, it return the number of bytes occupied by all point sets. If you need to find the number of points, you need to divide dataSize by the structure size of the corresponding point type.
-
uint32_t ob_video_frame_width(ob_frame *frame, ob_error **error)¶
Get video frame width.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
uint32_t return the frame width
-
uint32_t ob_video_frame_height(ob_frame *frame, ob_error **error)¶
Get video frame height.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
uint32_t return the frame height
-
void *ob_video_frame_metadata(ob_frame *frame, ob_error **error)¶
Get the metadata of the frame.
- Parameters
frame – [in] Video frame object
error – [out] Log error messages
- Returns
void* return the metadata pointer of the frame
-
uint32_t ob_video_frame_metadata_size(ob_frame *frame, ob_error **error)¶
Get the metadata size of the frame.
- Parameters
frame – [in] Video frame object
error – [out] Log error messages
- Returns
uint32_t return the metadata size of the frame
-
uint8_t ob_video_frame_pixel_available_bit_size(ob_frame *frame, ob_error **error)¶
Get the effective number of pixels (such as Y16 format frame, but only the lower 10 bits are effective bits, and the upper 6 bits are filled with 0)
- Attention
Only valid for Y8/Y10/Y11/Y12/Y14/Y16 format
- Parameters
frame – [in] video frame object
error – [out] log error messages
- Returns
uint8_t return the effective number of pixels in the pixel, or 0 if it is an unsupported format
-
ob_sensor_type ob_ir_frame_get_source_sensor_type(ob_frame *frame, ob_error **ob_error)¶
Get the source sensor type of the ir frame (left or right for dual camera)
- Parameters
frame – Frame object
ob_error – Log error messages
- Returns
ob_sensor_type return the source sensor type of the ir frame
-
float ob_depth_frame_get_value_scale(ob_frame *frame, ob_error **error)¶
Get the value scale of the depth frame. The pixel value of the depth frame is multiplied by the scale to give a depth value in millimeters. For example, if valueScale=0.1 and a certain coordinate pixel value is pixelValue=10000, then the depth value = pixelValue*valueScale = 10000*0.1=1000mm.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
float The value scale of the depth frame
-
float ob_points_frame_get_position_value_scale(ob_frame *frame, ob_error **error)¶
Get the point position value scale of the points frame. The point position value of the points frame is multiplied by the scale to give a position value in millimeters. For example, if scale=0.1, the x-coordinate value of a point is x = 10000, which means that the actual x-coordinate value = x*scale = 10000*0.1 = 1000mm.
- Parameters
frame – [in] Frame object
error – [out] Log error messages
- Returns
float The position value scale of the points frame
-
void ob_delete_frame(ob_frame *frame, ob_error **error)¶
Delete a frame object.
- Parameters
frame – [in] The frame object to delete
error – [out] Log error messages
-
uint32_t ob_frameset_frame_count(ob_frame *frameset, ob_error **error)¶
Get the number of frames contained in the frameset.
- Parameters
frameset – [in] frameset object
error – [out] Log error messages
- Returns
uint32_t return the number of frames
-
ob_frame *ob_frameset_depth_frame(ob_frame *frameset, ob_error **error)¶
Get the depth frame from the frameset.
- Parameters
frameset – [in] Frameset object.
error – [out] Log error messages.
- Returns
ob_frame* Return the depth frame.
-
ob_frame *ob_frameset_color_frame(ob_frame *frameset, ob_error **error)¶
Get the color frame from the frameset.
- Parameters
frameset – [in] Frameset object.
error – [out] Log error messages.
- Returns
ob_frame* Return the color frame.
-
ob_frame *ob_frameset_ir_frame(ob_frame *frameset, ob_error **error)¶
Get the infrared frame from the frameset.
- Parameters
frameset – [in] Frameset object.
error – [out] Log error messages.
- Returns
ob_frame* Return the infrared frame.
-
ob_frame *ob_frameset_points_frame(ob_frame *frameset, ob_error **error)¶
Get point cloud data from the frameset.
- Parameters
frameset – [in] Frameset object.
error – [out] Log error messages.
- Returns
ob_frame* Return the point cloud frame.
-
ob_frame *ob_frameset_get_frame(ob_frame *frameset, ob_frame_type frame_type, ob_error **error)¶
Get a frame of a specific type from the frameset.
- Parameters
frameset – [in] Frameset object.
frame_type – [in] Frame type.
error – [out] Log error messages.
- Returns
ob_frame* Return the frame of the specified type, or nullptr if it does not exist.
-
ob_accel_value ob_accel_frame_value(ob_frame *frame, ob_error **error)¶
Get accelerometer frame data.
- Parameters
frame – [in] Accelerometer frame.
error – [out] Log error messages.
- Returns
ob_accel_value Return the accelerometer data.
-
float ob_accel_frame_temperature(ob_frame *frame, ob_error **error)¶
Get the temperature when acquiring the accelerometer frame.
- Parameters
frame – [in] Accelerometer frame.
error – [out] Log error messages.
- Returns
float Return the temperature value.
-
ob_gyro_value ob_gyro_frame_value(ob_frame *frame, ob_error **error)¶
Get gyroscope frame data.
- Parameters
frame – [in] Gyroscope frame.
error – [out] Log error messages.
- Returns
ob_gyro_value Return the gyroscope data.
-
float ob_gyro_frame_temperature(ob_frame *frame, ob_error **error)¶
Get the temperature when acquiring the gyroscope frame.
- Parameters
frame – [in] Gyroscope frame.
error – [out] Log error messages.
- Returns
float Return the temperature value.
-
void ob_frame_add_ref(ob_frame *frame, ob_error **error)¶
Increase the reference count of a frame object.
- Parameters
frame – [in] Frame object to increase the reference count.
error – [out] Log error messages.
-
ob_frame *ob_create_frame(ob_format frame_format, int width, int height, int stride_bytes, ob_frame_type frame_type, ob_error **error)¶
Create an empty frame object based on the specified parameters.
- Parameters
frame_format – [in] Frame object format.
width – [in] Frame object width.
height – [in] Frame object height.
stride_bytes – [in] Buffer row span.
frame_type – [in] Frame object type.
error – [out] Log error messages.
- Returns
ob_frame* Return an empty frame object.
-
ob_frame *ob_create_frame_from_buffer(ob_format frame_format, uint32_t frame_width, uint32_t frame_height, uint8_t *buffer, uint32_t buffer_size, ob_frame_destroy_callback *buffer_destroy_cb, void *buffer_destroy_context, ob_error **error)¶
Create a frame object based on an externally created buffer.
- Parameters
frame_format – [in] Frame object format.
frame_width – [in] Frame object width.
frame_height – [in] Frame object height.
buffer – [in] Frame object buffer.
buffer_size – [in] Frame object buffer size.
buffer_destroy_cb – [in] Destroy callback.
buffer_destroy_context – [in] Destroy context.
error – [out] Log error messages.
- Returns
ob_frame* Return the frame object.
-
ob_frame *ob_create_frameset(ob_error **error)¶
Create an empty frameset object.
- Parameters
error – [out] Log error messages.
- Returns
ob_frame* Return the frameset object.
-
void ob_frameset_push_frame(ob_frame *frameset, ob_frame_type type, ob_frame *frame, ob_error **error)¶
Add a frame of the specified type to the frameset.
- Parameters
frameset – [in] Frameset object.
type – [in] Type of frame to add.
frame – [in] Frame object to add.
error – [out] Log error messages.
-
void ob_frame_set_system_time_stamp(ob_frame *frame, uint64_t system_timestamp, ob_error **error)¶
Set the system timestamp of a frame object.
- Parameters
frame – [in] Frame object to set the system timestamp for.
system_timestamp – [in] System timestamp to set in milliseconds.
error – [out] Log error messages.
-
void ob_frame_set_device_time_stamp(ob_frame *frame, uint64_t device_timestamp, ob_error **error)¶
Set the device timestamp of a frame object.
- Parameters
frame – [in] Frame object to set the device timestamp.
device_timestamp – [in] Device timestamp to set in milliseconds.
error – [out] Log error messages.
-
void ob_frame_set_device_time_stamp_us(ob_frame *frame, uint64_t device_timestamp_us, ob_error **error)¶
Set the device timestamp of a frame object.
- Parameters
frame – [in] Frame object to set the device timestamp for.
device_timestamp_us – [in] Device timestamp to set in microseconds.
error – [out] Log error messages.
-
ob_pipeline *ob_create_pipeline(ob_error **error)¶
Create a pipeline object.
- Parameters
error – [out] Log error messages
- Returns
ob_pipeline* return the pipeline object
-
ob_pipeline *ob_create_pipeline_with_device(ob_device *dev, ob_error **error)¶
Using device objects to create pipeline objects.
- Parameters
dev – [in] Device object used to create pipeline
error – [out] Log error messages
- Returns
ob_pipeline* return the pipeline object
-
ob_pipeline *ob_create_pipeline_with_playback_file(const char *file_name, ob_error **error)¶
Use the playback file to create a pipeline object.
- Parameters
file_name – [in] The playback file path used to create the pipeline
error – [out] Log error messages
- Returns
ob_pipeline* return the pipeline object
-
void ob_delete_pipeline(ob_pipeline *pipeline, ob_error **error)¶
Delete pipeline objects.
- Parameters
pipeline – [in] The pipeline object to be deleted
error – [out] Log error messages
-
void ob_pipeline_start(ob_pipeline *pipeline, ob_error **error)¶
Start the pipeline with default parameters.
- Parameters
pipeline – [in] pipeline object
error – [out] Log error messages
-
void ob_pipeline_start_with_config(ob_pipeline *pipeline, ob_config *config, ob_error **error)¶
Start the pipeline with configuration parameters.
- Parameters
pipeline – [in] pipeline object
config – [in] Parameters to be configured
error – [out] Log error messages
-
void ob_pipeline_start_with_callback(ob_pipeline *pipeline, ob_config *config, ob_frameset_callback callback, void *user_data, ob_error **error)¶
Start the pipeline and set the frame collection data callback.
- Parameters
pipeline – [in] pipeline object
config – [in] Parameters to be configured
callback – [in] Trigger a callback when all frame data in the frameset arrives
user_data – [in] Pass in any user data and get it from the callback
error – [out] Log error messages
-
void ob_pipeline_stop(ob_pipeline *pipeline, ob_error **error)¶
Stop pipeline.
- Parameters
pipeline – [in] pipeline object
error – [out] Log error messages
-
ob_config *ob_pipeline_get_config(ob_pipeline *pipeline, ob_error **error)¶
Get the configuration object associated with the pipeline.
- Parameters
pipeline – [in] The pipeline object
error – [out] Log error messages
- Returns
ob_config* The configuration object
-
ob_frame *ob_pipeline_wait_for_frameset(ob_pipeline *pipeline, uint32_t timeout_ms, ob_error **error)¶
Wait for a set of frames to be returned synchronously.
- Parameters
pipeline – [in] The pipeline object
timeout_ms – [in] The timeout for waiting (in milliseconds)
error – [out] Log error messages
- Returns
ob_frame* The frameset that was waited for. A frameset is a special frame that can be used to obtain independent frames from the set.
-
ob_device *ob_pipeline_get_device(ob_pipeline *pipeline, ob_error **error)¶
Get the device object associated with the pipeline.
- Parameters
pipeline – [in] The pipeline object
error – [out] Log error messages
- Returns
ob_device* The device object
-
ob_playback *ob_pipeline_get_playback(ob_pipeline *pipeline, ob_error **error)¶
Get the playback object associated with the pipeline.
- Parameters
pipeline – [in] The pipeline object
error – [out] Log error messages
- Returns
ob_playback* The playback object
-
ob_stream_profile_list *ob_pipeline_get_stream_profile_list(ob_pipeline *pipeline, ob_sensor_type sensorType, ob_error **error)¶
Get the stream profile list associated with the pipeline.
- Parameters
pipeline – [in] The pipeline object
sensorType – [in] The sensor type. The supported sensor types can be obtained through the ob_device_get_sensor_list() interface.
error – [out] Log error messages
- Returns
ob_stream_profile_list* The stream profile list
-
void ob_pipeline_enable_frame_sync(ob_pipeline *pipeline, ob_error **error)¶
Enable frame synchronization.
- Parameters
pipeline – [in] The pipeline object
error – [out] Log error messages
-
void ob_pipeline_disable_frame_sync(ob_pipeline *pipeline, ob_error **error)¶
Disable frame synchronization.
- Parameters
pipeline – [in] The pipeline object
error – [out] Log error messages
-
void ob_pipeline_switch_config(ob_pipeline *pipeline, ob_config *config, ob_error **error)¶
Dynamically switch the corresponding configuration.
- Parameters
pipeline – [in] The pipeline object
config – [in] The pipeline configuration
error – [out] Log error messages
-
ob_camera_param ob_pipeline_get_camera_param_with_profile(ob_pipeline *pipeline, uint32_t colorWidth, uint32_t colorHeight, uint32_t depthWidth, uint32_t depthHeight, ob_error **error)¶
Get the current camera parameters.
- Parameters
pipeline – [in] pipeline object
colorWidth – [in] color width
colorHeight – [in] color height
depthWidth – [in] depth width
depthHeight – [in] depth height
error – [out] Log error messages
- Returns
ob_camera_param returns camera internal parameters
-
ob_camera_param ob_pipeline_get_camera_param(ob_pipeline *pipeline, ob_error **error)¶
Get current camera parameters.
-
ob_stream_profile_list *ob_get_d2c_depth_profile_list(ob_pipeline *pipeline, ob_stream_profile *color_profile, ob_align_mode align_mode, ob_error **error)¶
Return a list of D2C-enabled depth sensor resolutions corresponding to the input color sensor resolution.
- Parameters
pipeline – [in] The pipeline object
color_profile – [in] The input profile of the color sensor
align_mode – [in] The input align mode
error – [out] Log error messages
- Returns
ob_stream_profile_list* The list of D2C-enabled depth sensor resolutions
-
ob_rect ob_get_d2c_valid_area(ob_pipeline *pipeline, uint32_t distance, ob_error **error)¶
Get the valid area after D2C (DEPRECATED)
- Parameters
pipeline – [in] The pipeline object
distance – [in] The working distance
error – [out] Log error messages
- Returns
ob_rect The area information that is valid after D2C at the working distance
-
ob_rect ob_get_d2c_range_valid_area(ob_pipeline *pipeline, uint32_t minimum_distance, uint32_t maximum_distance, ob_error **error)¶
Get the valid area between the minimum distance and maximum distance after D2C.
- Parameters
pipeline – [in] The pipeline object
minimum_distance – [in] The minimum working distance
maximum_distance – [in] The maximum working distance
error – [out] Log error messages
- Returns
ob_rect The area information that is valid after D2C at the working distance
-
void ob_pipeline_start_record(ob_pipeline *pipeline, const char *file_name, ob_error **error)¶
Start recording.
- Parameters
pipeline – [in] The pipeline object
file_name – [in] The recorded file path
error – [out] Log error messages
-
void ob_pipeline_stop_record(ob_pipeline *pipeline, ob_error **error)¶
Stop recording.
- Parameters
pipeline – [in] The pipeline object
error – [out] Log error messages
-
ob_config *ob_create_config(ob_error **error)¶
Create the pipeline configuration.
- Parameters
error – [out] Log error messages
- Returns
ob_config* The configuration object
-
void ob_delete_config(ob_config *config, ob_error **error)¶
Delete the pipeline configuration.
- Parameters
config – [in] The configuration to be deleted
error – [out] Log error messages
-
void ob_config_enable_stream(ob_config *config, ob_stream_profile *profile, ob_error **error)¶
Enable the specified stream in the pipeline configuration.
- Parameters
config – [in] The pipeline configuration
profile – [in] The stream configuration to be enabled
error – [out] Log error messages
-
void ob_config_enable_all_stream(ob_config *config, ob_error **error)¶
Enable all streams in the pipeline configuration.
- Parameters
config – [in] The pipeline configuration
error – [out] Log error messages
-
void ob_config_disable_stream(ob_config *config, ob_stream_type type, ob_error **error)¶
Disable a specific stream in the pipeline configuration.
- Parameters
config – [in] The pipeline configuration
type – [in] The type of stream to be disabled
error – [out] Log error messages
-
void ob_config_disable_all_stream(ob_config *config, ob_error **error)¶
Disable all streams in the pipeline configuration.
- Parameters
config – [in] The pipeline configuration
error – [out] Log error messages
-
void ob_config_set_align_mode(ob_config *config, ob_align_mode mode, ob_error **error)¶
Set the alignment mode for the pipeline configuration.
- Parameters
config – [in] The pipeline configuration
mode – [in] The alignment mode to be set
error – [out] Log error messages
-
void ob_config_set_depth_scale_require(ob_config *config, bool enable, ob_error **error)¶
Set whether depth scaling is required after setting D2C.
- Parameters
config – [in] The pipeline configuration
enable – [in] Whether scaling is required
error – [out] Log error messages
-
void ob_config_set_d2c_target_resolution(ob_config *config, uint32_t d2c_target_width, uint32_t d2c_target_height, ob_error **error)¶
Set the target resolution for D2C, which is applicable when the color stream is not enabled using the OrbbecSDK and the depth needs to be D2C Note: When using the OrbbecSDK to enable the color stream, this interface should also be used to set the D2C target resolution. The configuration of the enabled color stream is preferred for D2C.
- Parameters
config – [in] The pipeline configuration
d2c_target_width – [in] The target width for D2C
d2c_target_height – [in] The target height for D2C
error – [out] Log error messages
-
void ob_config_set_frame_aggregate_output_mode(ob_config *config, ob_frame_aggregate_output_mode mode, ob_error **error)¶
Set the frame aggregation output mode for the pipeline configuration.
The processing strategy when the FrameSet generated by the frame aggregation function does not contain the frames of all opened streams (which can be caused by different frame rates of each stream, or by the loss of frames of one stream): drop directly or output to the user.
- Parameters
config – [in] The pipeline configuration
mode – [in] The frame aggregation output mode to be set (default mode is OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION)
error – [out] Log error messages
-
ob_recorder *ob_create_recorder(ob_error **error)¶
Create a recorder for data recording.
- Parameters
error – [out] Pointer to log error messages.
- Returns
Pointer to the recorder object.
-
ob_recorder *ob_create_recorder_with_device(ob_device *dev, ob_error **error)¶
Create a recorder for data recording.
- Parameters
dev – The device object used to create the recorder.
error – [out] Pointer to log error messages.
- Returns
Pointer to the recorder object.
-
void ob_delete_recorder(ob_recorder *recorder, ob_error **error)¶
Delete the recorder object.
- Parameters
recorder – Pointer to the recorder object.
error – [out] Pointer to log error messages.
-
void ob_recorder_start(ob_recorder *recorder, const char *filename, bool async, ob_error **error)¶
Start recording.
- Parameters
recorder – [in] Pointer to the recorder object.
filename – [in] Recorded file name.
async – [in] Whether to record asynchronously.
error – [out] Pointer to log error messages.
-
void ob_recorder_stop(ob_recorder *recorder, ob_error **error)¶
Stop recording.
- Parameters
recorder – [in] Pointer to the recorder object.
error – [out] Pointer to log error messages.
-
void ob_recorder_write_frame(ob_recorder *recorder, ob_frame *frame, ob_error **error)¶
Write frame data to the recorder.
- Parameters
recorder – [in] Pointer to the recorder object.
frame – [in] Pointer to the frame data to write.
error – [out] Pointer to log error messages.
-
ob_playback *ob_create_playback(const char *filename, ob_error **error)¶
Create a playback object.
- Parameters
filename – [in] Playback filename.
error – [out] Pointer to log error messages.
- Returns
Pointer to the playback object.
-
void ob_delete_playback(ob_playback *playback, ob_error **error)¶
Delete the playback object.
- Parameters
playback – [in] Pointer to the playback object.
error – [out] Pointer to log error messages.
-
void ob_playback_start(ob_playback *playback, ob_playback_callback callback, void *user_data, ob_media_type type, ob_error **error)¶
Start playback, with data returned from the callback.
- Parameters
playback – [in] Pointer to the playback object.
callback – [in] Callback function for playback data.
user_data – [in] User data.
type – [in] Type of playback data.
error – [out] Pointer to log error messages.
-
void ob_playback_stop(ob_playback *playback, ob_error **error)¶
Stop playback.
- Parameters
playback – [in] Pointer to the playback object.
error – [out] Pointer to log error messages.
-
void ob_set_playback_state_callback(ob_playback *playback, ob_media_state_callback callback, void *user_data, ob_error **error)¶
Set the playback state.
- Parameters
playback – [in] Pointer to the playback object.
callback – [in] Playback status callback function.
user_data – [in] User data.
error – [out] Pointer to log error messages.
-
ob_device_info *ob_playback_get_device_info(ob_playback *playback, ob_error **error)¶
Get the device information in the recording file.
- Parameters
playback – [in] Pointer to the playback object.
error – [out] Pointer to log error messages.
- Returns
Pointer to the device information.
-
ob_camera_param ob_playback_get_camera_param(ob_playback *playback, ob_error **error)¶
Get the intrinsic and extrinsic parameter information in the recording file.
- Parameters
playback – [in] Pointer to the playback object.
error – [out] Pointer to log error messages.
- Returns
Camera intrinsic and extrinsic parameter.
-
ob_sensor_type ob_sensor_get_type(ob_sensor *sensor, ob_error **error)¶
Get the type of the sensor.
- Parameters
sensor – [in] The sensor object.
error – [out] Logs error messages.
- Returns
The sensor type.
-
ob_stream_profile_list *ob_sensor_get_stream_profile_list(ob_sensor *sensor, ob_error **error)¶
Get a list of all supported stream profiles.
- Parameters
sensor – [in] The sensor object.
error – [out] Logs error messages.
- Returns
A list of stream profiles.
-
void ob_sensor_start(ob_sensor *sensor, ob_stream_profile *profile, ob_frame_callback callback, void *user_data, ob_error **error)¶
Open the current sensor and set the callback data frame.
- Parameters
sensor – [in] The sensor object.
profile – [in] The stream configuration information.
callback – [in] The callback function triggered when frame data arrives.
user_data – [in] Any user data to pass in and get from the callback.
error – [out] Logs error messages.
-
void ob_sensor_stop(ob_sensor *sensor, ob_error **error)¶
Stop the sensor stream.
- Parameters
sensor – [in] The sensor object.
error – [out] Logs error messages.
-
void ob_sensor_switch_profile(ob_sensor *sensor, ob_stream_profile *profile, ob_error **error)¶
Dynamically switch resolutions.
- Parameters
sensor – [in] The sensor object.
profile – [in] The stream configuration information.
error – [out] Logs error messages.
-
void ob_delete_sensor_list(ob_sensor_list *sensor_list, ob_error **error)¶
Delete a list of sensor objects.
- Parameters
sensor_list – [in] The list of sensor objects to delete.
error – [out] Logs error messages.
-
uint32_t ob_sensor_list_get_sensor_count(ob_sensor_list *sensor_list, ob_error **error)¶
Get the number of sensors in the sensor list.
- Parameters
sensor_list – [in] The list of sensor objects.
error – [out] Logs error messages.
- Returns
The number of sensors in the list.
-
ob_sensor_type ob_sensor_list_get_sensor_type(ob_sensor_list *sensor_list, uint32_t index, ob_error **error)¶
Get the sensor type.
- Parameters
sensor_list – [in] The list of sensor objects.
index – [in] The index of the sensor on the list.
error – [out] Logs error messages.
- Returns
The sensor type.
-
ob_sensor *ob_sensor_list_get_sensor_by_type(ob_sensor_list *sensor_list, ob_sensor_type sensorType, ob_error **error)¶
Get a sensor by sensor type.
- Parameters
sensor_list – [in] The list of sensor objects.
sensorType – [in] The sensor type to be obtained.
error – [out] Logs error messages.
- Returns
The sensor pointer. If the specified type of sensor does not exist, it will return null.
-
ob_sensor *ob_sensor_list_get_sensor(ob_sensor_list *sensor_list, uint32_t index, ob_error **error)¶
Get a sensor by index number.
- Parameters
sensor_list – [in] The list of sensor objects.
index – [in] The index of the sensor on the list.
error – [out] Logs error messages.
- Returns
The sensor object.
-
void ob_delete_sensor(ob_sensor *sensor, ob_error **error)¶
Delete a sensor object.
- Parameters
sensor – [in] The sensor object to delete.
error – [out] Logs error messages.
-
ob_format ob_stream_profile_format(ob_stream_profile *profile, ob_error **error)¶
Get stream profile format.
- Parameters
profile – [in] Stream configuration object
error – [out] Log error messages
- Returns
ob_format return the format of the stream
-
ob_stream_type ob_stream_profile_type(ob_stream_profile *profile, ob_error **error)¶
Get stream profile type.
- Parameters
profile – [in] Stream configuration object
error – [out] Log error messages
- Returns
ob_stream_type stream type
-
uint32_t ob_video_stream_profile_fps(ob_stream_profile *profile, ob_error **error)¶
Get the frame rate of the video stream configuration.
- Parameters
profile – [in] Stream configuration object
error – [out] Log error messages
- Returns
uint32_t return the frame rate of the stream
-
uint32_t ob_video_stream_profile_width(ob_stream_profile *profile, ob_error **error)¶
Get the width of the video stream configuration.
- Parameters
profile – [in] Stream configuration object, if the configuration is not a video stream configuration, an error will be returned
error – [out] Log error messages
- Returns
uint32_t return the width of the stream
-
uint32_t ob_video_stream_profile_height(ob_stream_profile *profile, ob_error **error)¶
Get the height of the video stream configuration.
- Parameters
profile – [in] Stream configuration object, if the configuration is not a video stream configuration, an error will be returned
error – [out] Log error messages
- Returns
uint32_t return the height of the stream
-
ob_accel_full_scale_range ob_accel_stream_profile_full_scale_range(ob_stream_profile *profile, ob_error **error)¶
Get the full-scale range of the accelerometer stream.
- Parameters
profile – [in] Stream configuration object. If the configuration is not for the accelerometer stream, an error will be returned.
error – [out] Log error messages.
- Returns
The full-scale range of the accelerometer stream.
-
ob_accel_sample_rate ob_accel_stream_profile_sample_rate(ob_stream_profile *profile, ob_error **error)¶
Get the sampling frequency of the accelerometer frame.
- Parameters
profile – [in] Stream configuration object. If the configuration is not for the accelerometer stream, an error will be returned.
error – [out] Log error messages.
- Returns
The sampling frequency of the accelerometer frame.
-
ob_gyro_full_scale_range ob_gyro_stream_profile_full_scale_range(ob_stream_profile *profile, ob_error **error)¶
Get the full-scale range of the gyroscope stream.
- Parameters
profile – [in] Stream configuration object. If the configuration is not for the gyroscope stream, an error will be returned.
error – [out] Log error messages.
- Returns
The full-scale range of the gyroscope stream.
-
ob_gyro_sample_rate ob_gyro_stream_profile_sample_rate(ob_stream_profile *profile, ob_error **error)¶
Get the sampling frequency of the gyroscope stream.
- Parameters
profile – [in] Stream configuration object. If the configuration is not for the gyroscope stream, an error will be returned.
error – [out] Log error messages.
- Returns
The sampling frequency of the gyroscope stream.
-
ob_stream_profile *ob_stream_profile_list_get_video_stream_profile(ob_stream_profile_list *profile_list, int width, int height, ob_format format, int fps, ob_error **error)¶
Match the corresponding ob_stream_profile through the passed parameters. If there are multiple matches, the first one in the list will be returned by default. If no matched profile is found, an error will be returned.
- Parameters
profile_list – [in] Resolution list.
width – [in] Width. If you don’t need to add matching conditions, you can pass 0.
height – [in] Height. If you don’t need to add matching conditions, you can pass 0.
format – [in] Format. If you don’t need to add matching conditions, you can pass OB_FORMAT_UNKNOWN.
fps – [in] Frame rate. If you don’t need to add matching conditions, you can pass 0.
error – [out] Log error messages.
- Returns
The matching profile.
-
ob_stream_profile *ob_stream_profile_list_get_accel_stream_profile(ob_stream_profile_list *profile_list, ob_accel_full_scale_range fullScaleRange, ob_accel_sample_rate sampleRate, ob_error **error)¶
Match the corresponding ob_stream_profile through the passed parameters. If there are multiple matches, the first one in the list will be returned by default. If no matched profile is found, an error will be returned.
- Parameters
profile_list – [in] Resolution list.
fullScaleRange – [in] Full-scale range. If you don’t need to add matching conditions, you can pass 0.
sampleRate – [in] Sample rate. If you don’t need to add matching conditions, you can pass 0.
error – [out] Log error messages.
- Returns
The matching profile.
-
ob_stream_profile *ob_stream_profile_list_get_gyro_stream_profile(ob_stream_profile_list *profile_list, ob_gyro_full_scale_range fullScaleRange, ob_gyro_sample_rate sampleRate, ob_error **error)¶
Match the corresponding ob_stream_profile through the passed parameters. If there are multiple matches, the first one in the list will be returned by default. If no matched profile is found, an error will be returned.
- Parameters
profile_list – [in] Resolution list.
fullScaleRange – [in] Full-scale range. If you don’t need to add matching conditions, you can pass 0.
sampleRate – [in] Sample rate. If you don’t need to add matching conditions, you can pass 0.
error – [out] Log error messages.
- Returns
The matching profile.
-
ob_stream_profile *ob_stream_profile_list_get_profile(ob_stream_profile_list *profile_list, int index, ob_error **error)¶
Get the corresponding StreamProfile by subscripting.
- Parameters
profile_list – [in] StreamProfile lists.
index – [in] Index.
error – [out] Log error messages.
- Returns
The matching profile.
-
uint32_t ob_stream_profile_list_count(ob_stream_profile_list *profile_list, ob_error **error)¶
Get the number of StreamProfile lists.
- Parameters
profile_list – [in] StreamProfile list.
error – [out] Log error messages.
- Returns
The number of StreamProfile lists.
-
void ob_delete_stream_profile_list(ob_stream_profile_list *profile_list, ob_error **error)¶
Delete the stream profile list.
- Parameters
profile_list – [in] Stream configuration list.
error – [out] Log error messages.
-
void ob_delete_stream_profile(ob_stream_profile *profile, ob_error **error)¶
Delete the stream configuration.
- Parameters
profile – [in] Stream configuration object.
error – [out] Log error messages.
-
int ob_get_version()¶
Get the SDK version number.
- Returns
int The SDK version number.
-
int ob_get_major_version()¶
Get the SDK major version number.
- Returns
int The SDK major version number.
-
int ob_get_minor_version()¶
Get the SDK minor version number.
- Returns
int The SDK minor version number.
-
int ob_get_patch_version()¶
Get the SDK patch version number.
- Returns
int The SDK patch version number.
-
const char *ob_get_stage_version()¶
Get the SDK stage version.
- Attention
The returned char* does not need to be freed.
- Returns
const char* The SDK stage version.